묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
오탈자 문의합니다
안녕하세요 깃허브 참고하면서 175페이지 오탈자 수정하고 있습니다. 세마포어에는 조건 변수가 없고 스레드가 세마포어 값을 수정할 때 다른 프로세스나 스레드가 세모포어 값을 수정할 때 다른 스레드는 동시에 세마포어 값을 수정할 수 없습니다. 혹시 이 부분에서 굵은 글씨 표시한 부분은 같은 말이 두 번 들어간 건가요? 아니면 스레드가 세마포어 값을 수정하거나 다른 프로세스나 스레드가 세모포어 값을 수정할 때 다른 스레드는~~ 두 가지 조건(?)인 건가요?제가 아직 os에 대한 기초 지식이 부족한 상태로 읽고 있어 이해를 못 하는 거일 수도 있습니다. 시간 괜찮으실 때 답변해주시면 감사하겠습니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
Run time 에러 원인을 찾다 찾다가 못찾겠습니다 ㅠ.. 도움이 필요해요 ㅠ.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. IDE에서는 오류가 나지 않습니다. 채점화면만 나는데 제가 간과한 부분이 있을까요? import java.util.ArrayList; import java.util.Scanner; public class Main { public static ArrayList<Integer> solution(int[] arr1, int[] arr2) { ArrayList<Integer> result = new ArrayList<>(); int index1 = 0; int index2 =0; for(int i =0; i<(arr1.length + arr2.length);i++ ) { if((index1 >= arr1.length) || (index2 >= arr2.length)){ if((arr1.length)> (arr2.length)) { result.add(arr1[index1]); index1++; } else { result.add(arr2[index2]); index2++; }// if - else }else { if(arr1[index1] > arr2[index2]) { result.add(arr2[index2]); index2++; } else { result.add(arr1[index1]); index1++; }// if-else }//if- else }// for return result; } // solution public static void main(String[] args) { Scanner sc = new Scanner(System.in); int input1 = sc.nextInt(); int[] arr1 = new int[input1]; for(int i=0;i<input1;i++) { arr1[i]= sc.nextInt(); } //for int input2 = sc.nextInt(); int[] arr2 = new int[input2]; for(int i=0;i<input2;i++) { arr2[i]= sc.nextInt(); } //for for(int answer :solution(arr1, arr2)) { System.out.print(answer+" "); }//for } // main }// end class
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
roletype값 관련 질문
JpaMain 코드 2. Member 부분 코드 package hellojpa;import javax.persistence.*;import java.time.LocalDate;import java.time.LocalDateTime;import java.util.Date;@Entitypublic class Member { @Id private Long id; @Column(name = "name") private String username; private Integer age; @Enumerated(EnumType.STRING) private RoleType roleType; @Temporal(TemporalType.TIMESTAMP) private Date createdDate; @Temporal(TemporalType.TIMESTAMP) private Date lastModifiedDate; @Lob private String description; //Getter, Setter… public Member() { } public void setId(Long id) { this.id = id; } public void setUsername(String username) { this.username = username; } public void setAge(Integer age) { this.age = age; } public void setRoleType(RoleType roleType) { this.roleType = roleType; }}3. rolltype 부분4. persist 설정 이렇게 설정을 두고, db 저장 부분을 실행해 보았을때, 다음과 같은 결과가 나왔습니다. 또한, 설정값을 update로 바꾸었을때는, 다음과 같이 에러가 발생했습니다. 왜 rolltype부분이 강사님처럼 숫자가 아닌 텍스트가 그대로 뜨는지, 왜 update에서 강사님처럼 성공적으로 뜨지 않고 에러가 나는지 알 수 있을까요?
-
미해결냉동코더의 알기 쉬운 Modern Android Development 입문
DataStore로 자동로그인 구현
강의와 관련된 내용은 아니지만 냉동코더님 DataStore를 공부하고 개인 프로젝트를 진행하는 중에 자동로그인 기능을 구현하고 있습니다. 염치없지만 물어볼 곳이 없어 여쭈어봅니다...!ㅠ 처음 LoginActivity에서 DataStore에 있는 로그인 여부 Boolean 값을 확인하고 다음 HomeActivity로 넘어갈 때 약간의 딜레이가있어 LoginActivity가 끔뻑하고 보였다가 넘어가게 됩니다. 이럴 때 해결방법이 있을까요? 혹시 LoginActivity가 켜지기 전에 DataStore값을 확인해서 처음부터 LoginActivity가 보이지 않게 하는 방법은 있을까요? (지금 생각나는 방법은 스플레시 화면의 시간을 설정해놔서 스플레시 화면이 보이는 동안 딜레이가 다 지나가게 해볼까 생각중인데 이게 맞나 싶네요..ㅎ)
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
ValidateIf 미작동에 관한 질문
안녕하세요! 위 코드에서 validateIf가 작동하지 않는데요 파라미터로 값을 받아오는데 existsMemo가 파라미터로 값을 보내줄때만 validateIf를 적용시키고 싶어서요 true일때 나머지 옵션들을 무시하는 기능이라고 알고있는데 혹시 사용법이 잘못됬나해서 질문드립니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
querydsl 사용에 질문있습니다.
안녕하세요 김영한 강사님, querydsl 사용할때, 오라클처럼 FROM DUAL이나 MySQL처럼 FROM절을 생략하려면 어떻게해야하나요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
강의들으면서 @ToMany에 질문이있습니다.
안녕하세요 김영한 강사님, @XXToMany 같은 어노테이션을 사용해서 발생되 N+1의 문제를 해결하기위해 fetch를 사용하는데, 그럼 여기서,JPQL로 fetch 조인을 사용하기위해 직접 String에 사용하는 방법이면 @ToMany어노테이션을 사용하지않은 엔티티들로 JPQL에 String에 직접 FK들을 적어서 조인을 사용한 쿼리랑 차이점이 뭐가있나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
연결된 컴포넌트 질문
예시문제. 종화는 방구쟁이야! (17:49)에서 궁금한 게 있는데요. 인접행렬은 그래프의 정점과 간선 관계를 나타내는 것이니까, 인접 행렬 자체만으로는 연결된 컴포넌트를 알 수 없지 않나요? 예를들면 위 인접행렬이 나타내는 그래프는 우측과 같고, 그래프는 연결된 컴포넌트라고 생각되는데, 인접행렬 상으로는 1인 원소가 연결되어있지 않아서 의문입니다. 강의 상에서 해당 예시 문제에서 나오는 맵이인접행렬이라면 연결된 컴포넌트 일 수 있는지아니라면 맵 자체가 그래프가 될 수 있는 건지,둘 다 아니면 제가 놓친 것이 무엇인지알려주시면 감사하겠습니다. 좋은 강의 감사합니다 !
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
일대일 양방향이면
일대일 양방향 관계라면 임의로 A에 외래키 설정 A <---------------------> B B:B 여기에는...? 1대 다 였으면 컬렉션을(list)를 활용했는데 여기서는 1대1이니까 그냥 B에 A:A를 만들고 매핑시켜주면 되는건가요
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
spring.jpa.hibernate.ddl-auto=create 하는 이유
안녕하세요! 강의 잘 듣고 있는 학생입니다 ㅎㅎ 강의를 따라하다가 에러가 나서 질문글 살펴보고 구글링해서 spring.jpa.hibernate.ddl-auto=create로 변경해보니 해결되었습니다. 지금 예제에서는 MEMBER 테이블이 만들어져 있기 때문에 이번 예제에서는 none을 사용한다고 이해했었습니다. 여기서 create를 하는 이유가 뭔가요? MEMBER 테이블과 다른 테이블을 만드는건가요? 감사합니다~
-
미해결Slack 클론 코딩[백엔드 with NestJS + TypeORM]
스웨거 문서를 PickType으로 만들 수 있나요?
1. Users.ts(엔티티) import { Column, CreateDateColumn, DeleteDateColumn, Entity, Index, JoinTable, ManyToMany, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn, } from 'typeorm'; import { ChannelChats } from './ChannelChats'; import { ChannelMembers } from './ChannelMembers'; import { Channels } from './Channels'; import { DMs } from './DMs'; import { Mentions } from './Mentions'; import { WorkspaceMembers } from './WorkspaceMembers'; import { Workspaces } from './Workspaces'; import { IsEmail, IsNotEmpty, IsString } from 'class-validator'; import { ApiProperty } from '@nestjs/swagger'; @Index('email', ['email'], { unique: true }) @Entity({ schema: 'sleact', name: 'users' }) export class Users { @PrimaryGeneratedColumn({ type: 'int', name: 'id' }) id: number; @ApiProperty({ example: `aaa123@google.com`, description: '이메일', required: true, }) @IsEmail() @IsNotEmpty() @Column('varchar', { name: 'email', unique: true, length: 30 }) email: string; @ApiProperty({ example: `홍길동`, description: '닉네임', required: true, }) @IsString() @IsNotEmpty() @Column('varchar', { name: 'nickname', length: 30 }) nickname: string; @ApiProperty({ example: `123123`, description: '비밀번호', required: true, }) @IsString() @IsNotEmpty() @Column('varchar', { name: 'password', length: 100, select: false }) password: string; @CreateDateColumn() createdAt: Date; @UpdateDateColumn() updatedAt: Date; @DeleteDateColumn() deletedAt: Date | null; @OneToMany(() => ChannelChats, (channelchats) => channelchats.User) ChannelChats: ChannelChats[]; @OneToMany(() => ChannelMembers, (channelmembers) => channelmembers.User) ChannelMembers: ChannelMembers[]; @OneToMany(() => DMs, (dms) => dms.Sender) DMs: DMs[]; @OneToMany(() => DMs, (dms) => dms.Receiver) DMs2: DMs[]; @OneToMany(() => Mentions, (mentions) => mentions.Sender) Mentions: Mentions[]; @OneToMany(() => Mentions, (mentions) => mentions.Receiver) Mentions2: Mentions[]; @OneToMany( () => WorkspaceMembers, (workspacemembers) => workspacemembers.User, ) WorkspaceMembers: WorkspaceMembers[]; @OneToMany(() => Workspaces, (workspaces) => workspaces.Owner) OwnedWorkspaces: Workspaces[]; @ManyToMany(() => Workspaces, (workspaces) => workspaces.Members) @JoinTable({ name: 'workspacemembers', joinColumn: { name: 'UserId', referencedColumnName: 'id', }, inverseJoinColumn: { name: 'WorkspaceId', referencedColumnName: 'id', }, }) Workspaces: Workspaces[]; @ManyToMany(() => Channels, (channels) => channels.Members) @JoinTable({ name: 'channelmembers', joinColumn: { name: 'UserId', referencedColumnName: 'id', }, inverseJoinColumn: { name: 'ChannelId', referencedColumnName: 'id', }, }) Channels: Channels[]; } 2. join.request.dto import { PickType } from '@nestjs/mapped-types'; import { Users } from '../../entities/Users'; export class JoinRequestDto extends PickType(Users, [ 'email', 'nickname', 'password', ] as const) {} 3. user.dto import { JoinRequestDto } from './join.request.dto'; import { ApiProperty } from '@nestjs/swagger'; export class UserDto extends JoinRequestDto { @ApiProperty({ example: `1`, description: '아이디', required: true, }) id: number; } 4. users.controller import { Body, Controller, ForbiddenException, Get, NotFoundException, Post, Req, Res, UseGuards, UseInterceptors, } from '@nestjs/common'; import { UsersService } from './users.service'; import { JoinRequestDto } from './dto/join.request.dto'; import { User } from '../common/decorators/user.decorator'; import { UndefinedToNullInterceptor } from '../common/interceptors/undefinedToNull.interceptor'; import { LocalAuthGuard } from '../auth/local-auth.guard'; import { NotLoggedInGuard } from '../auth/not-logged-in.guard'; import { LoggedInGuard } from '../auth/logged-in.guard'; import { ApiCookieAuth, ApiOperation, ApiResponse, ApiTags, } from '@nestjs/swagger'; import { Users } from '../entities/Users'; import { UserDto } from './dto/user.dto'; @ApiTags('USERS') @UseInterceptors(UndefinedToNullInterceptor) @Controller('api/users') export class UsersController { constructor(private readonly usersService: UsersService) {} @ApiCookieAuth('connect.sid') @ApiOperation({ summary: '내 정보 가져오기' }) @ApiResponse({ type: UserDto, }) @Get() async getMyProfile(@User() user: Users) { return user || false; } @ApiResponse({ status: 500, description: 'Server Error..', }) @ApiResponse({ status: 200, description: '성공!', }) @ApiOperation({ summary: '회원가입' }) @UseGuards(NotLoggedInGuard) @Post() async join(@Body() body: JoinRequestDto) { const user = this.usersService.findByEmail(body.email); if (!user) { throw new NotFoundException(); } const result = await this.usersService.join( body.email, body.nickname, body.password, ); if (result) { return 'ok'; } else { throw new ForbiddenException(); } } @ApiResponse({ status: 200, description: '성공', type: UserDto, }) @ApiOperation({ summary: '로그인' }) @UseGuards(LocalAuthGuard) @Post('login') async login(@User() user: Users) { return user; } @ApiCookieAuth('connect.sid') @ApiOperation({ summary: '로그아웃' }) @UseGuards(LoggedInGuard) @Post('logout') async logout(@Req() req, @Res() res) { req.logOut(); res.clearCookie('connect.sid', { httpOnly: true }); res.send('ok'); } } ---------------------------- 스웨거 문서 1. Dto 관련 스키마 2. usersDto를 사용한 결과 3. joinRequestDto를 사용한 결과 마지막 결과 쪽에 제가 생각한 것은 빈칸이 아니라{ email : "aaa123@google.com" nickname: "홍길동" passwork: "123123"} 이었는데 빈칸으로 나오네요.. 혹시 잘못한 부분이 있을까요?
-
미해결Nuxt.js 시작하기
현업에서는
pages와 component호출에 따라서 서버사이드 클라이언트사이드 렌더링이 될텐데. 현업에서는 어디서 호출을 하는지와 해당이유가 궁금합니다.
-
미해결자바스크립트 : 기초부터 실전까지 올인원
05:15 초 쯤 질문드립니다
질문드립니다. 05:15초 쯤에 함수가 만들어지기 이전에 선언되어 호이스팅에 의하여 에러가 발생하였는데, 사진에서 빨간색 네모칸도 함수가 만들어지기전에 선언되었는데 이건 왜 에러가 나지않고 실행이되는건가요?
-
미해결따라하며 배우는 리액트 A-Z[19버전 반영]
[react-button-app] VSCODE 코드 작성 중 인텔리센스 관련
안녕하세요, 강의 잘 듣고 있습니다. ESLint 설정을 마쳤음에도 강의에서 본 것과 같은 메소드 추천이 뜨지 않아 질문드립니다. 어떻게 해야 아래 스크린샷처럼 RTL 관련 메소드 추천을 받을 수 있을까요? 강사님께서 사용중이신 익스텐션을 알 수 있을까요? [강의에서 본 메소드 추천] [제 VSCode 테스팅 코드 메소드 추천 안됨 스크린샷] getBy... 입력 시 연관 메소드 추천 뜸 expect(counterElement).toBe... 입력 시 연관 메소드 추천되지 않음
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
java.lang.NullPointerException: inflate(inflater, R.layo…t_home, container, false) must not be null 같은 오류가 발생합니다.
homefragment부분에서 알 수 없는 오류가 발생하고 있는것 같습니다. 먼저 homegrament의 코드입니다. package fragmentimport android.content.Intentimport android.os.Bundleimport android.util.Logimport androidx.fragment.app.Fragmentimport android.view.LayoutInflaterimport android.view.Viewimport android.view.ViewGroupimport androidx.databinding.DataBindingUtilimport androidx.navigation.findNavControllerimport androidx.recyclerview.widget.GridLayoutManagerimport androidx.recyclerview.widget.RecyclerViewimport com.AllAboutKorea.allaboutkorea.*import com.AllAboutKorea.allaboutkorea.contentslist.BookmarkRVAdapterimport com.AllAboutKorea.allaboutkorea.contentslist.HistoryActivityimport com.AllAboutKorea.allaboutkorea.contentslist.contentmodelimport com.AllAboutKorea.allaboutkorea.databinding.FragmentHomeBindingimport com.AllAboutKorea.allaboutkorea.utils.FBAuthimport com.AllAboutKorea.allaboutkorea.utils.FBRefimport com.google.firebase.database.DataSnapshotimport com.google.firebase.database.DatabaseErrorimport com.google.firebase.database.ValueEventListenerclass HomeFragment : Fragment() { private lateinit var binding : FragmentHomeBinding //북마크 리스트의 중복 업로드를 막는 코드이다. var twiceupoad = false private val TAG = HomeFragment::class.java.simpleName val bookmarkIdList = mutableListOf<String>() val items = ArrayList<contentmodel>() val itemKeyList = ArrayList<String>() lateinit var rvAdapter : BookmarkRVAdapter override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) } override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { Log.d("HomeFragment", "onCreateView") binding = DataBindingUtil.inflate(inflater, R.layout.fragment_home, container, false) getbookmarkdata() //상단 아이콘을 클릭을 하면, 그 아이콘으로 이동하는 코드를 작성하자. binding.fragmentHomeHistory.setOnClickListener { val intent = Intent(context,HistoryActivity::class.java) startActivity(intent) } binding.fragmentHomeFood.setOnClickListener { val intent = Intent(context, FoodActivity::class.java) startActivity(intent) } binding.fragmentHomeKpop.setOnClickListener { val intent = Intent(context, KpopActivity::class.java) startActivity(intent) } binding.fragmentHomeKdrama.setOnClickListener { val intent = Intent(context, KdramaActivity::class.java) startActivity(intent) } binding.fragmentHomeKorean.setOnClickListener { val intent = Intent(context, KoreanActivity::class.java) startActivity(intent) } binding.fragmentHomeTravel.setOnClickListener { val intent = Intent(context, TravelActivity2::class.java) startActivity(intent) } binding.fragmentHomeFunfacts.setOnClickListener { val intent = Intent(context, FunfactsActivity::class.java) startActivity(intent) } binding.fragmentHomeEconomy.setOnClickListener { val intent = Intent(context, EconomyActivity::class.java) startActivity(intent) } binding.fragmentHomeKbeauty.setOnClickListener { val intent = Intent(context, KbeautyActivity::class.java) startActivity(intent) } //하단 아이콘을 클릭을 하면, 그 아이콘으로 이동하는 코드를 작성하자. binding.tipTap.setOnClickListener { Log.d("HomeFragment", "tipTap") it.findNavController().navigate(R.id.action_homeFragment_to_tipFragment) } binding.bookmarkTap.setOnClickListener { it.findNavController().navigate(R.id.action_homeFragment_to_bookmarkFragment) } binding.storeTap.setOnClickListener { it.findNavController().navigate(R.id.action_homeFragment_to_storeFragment) } rvAdapter = BookmarkRVAdapter(requireContext(), items, itemKeyList, bookmarkIdList) val rv : RecyclerView = binding.mainRV rv.adapter = rvAdapter rv.layoutManager = GridLayoutManager(requireContext(), 2) getCategoryData() return binding.root } private fun getCategoryData(){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { for (dataModel in dataSnapshot.children) { val item = dataModel.getValue(contentmodel::class.java) items.add(item!!) itemKeyList.add(dataModel.key.toString()) } rvAdapter.notifyDataSetChanged() } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w("ContentListActivity", "loadPost:onCancelled", databaseError.toException()) } } FBRef.category_history.addValueEventListener(postListener) FBRef.category_food.addValueEventListener(postListener) FBRef.category_k_pop.addValueEventListener(postListener) FBRef.category_k_drama.addValueEventListener(postListener) FBRef.category_korean.addValueEventListener(postListener) FBRef.category_travel.addValueEventListener(postListener) FBRef.category_funfacts.addValueEventListener(postListener) FBRef.category_economy.addValueEventListener(postListener) FBRef.category_k_beauty.addValueEventListener(postListener) } private fun getbookmarkdata(){ val postListener = object : ValueEventListener { override fun onDataChange(dataSnapshot: DataSnapshot) { //북마크를 동적으로 삭제하기 위한 코드. bookmarkIdList.clear() //데이터를 더하는 불러오는 역활. for(dataModel in dataSnapshot.children){ Log.e(TAG,dataModel.toString()) bookmarkIdList.add(dataModel.key.toString()) } //1.전체 카테고리에 있는 컨텐츠 데이터들을 다 가져온다. //자세한 코드는 여기 안에 있다. if(twiceupoad==false) { twiceupoad=true getCategoryData() } //이렇게 코드를 실행하면, getCategoryData는 getbookmarkdata //의 정보를 잘 알기 때문에, 북마크가 아닌 것을 잘 거를 수 있다. } override fun onCancelled(databaseError: DatabaseError) { // Getting Post failed, log a message Log.w(TAG, "loadPost:onCancelled", databaseError.toException()) } } //북마크 데이터를 불러오는 코드이다. FBRef.bookmarkref.child(FBAuth.getUid()).addValueEventListener(postListener) }}그 다음은 xml 파일입니다. <?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> <!-- TODO: Update blank fragment layout --> <androidx.constraintlayout.widget.ConstraintLayout android:layout_width="match_parent" android:layout_height="match_parent"> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" tools:layout_editor_absoluteX="0dp" tools:layout_editor_absoluteY="53dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="5dp" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="100dp"> <ImageView android:id="@+id/fragment_home_history" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_history" /> <ImageView android:id="@+id/fragment_home_food" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_food" /> <ImageView android:id="@+id/fragment_home_kpop" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_kpop" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="100dp"> <ImageView android:id="@+id/fragment_home_kdrama" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_kdrama" /> <ImageView android:id="@+id/fragment_home_korean" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_korean" /> <ImageView android:id="@+id/fragment_home_travel" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_travel" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="100dp"> <ImageView android:id="@+id/fragment_home_funfacts" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_funfacts" /> <ImageView android:id="@+id/fragment_home_economy" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_economy" /> <ImageView android:id="@+id/fragment_home_kbeauty" android:layout_width="90dp" android:layout_height="90dp" android:layout_weight="1" android:src="@drawable/icon_kbeauty" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Site list" android:textSize="20dp" android:font="@font/happygoheung" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/mainRV" android:layout_width="match_parent" android:layout_height="600dp" /> </LinearLayout> </ScrollView> <LinearLayout android:layout_width="match_parent" android:layout_height="3dp" app:layout_constraintBottom_toTopOf="@+id/linearLayout"> <LinearLayout android:background="@color/mainColor" android:layout_width="match_parent" android:layout_weight="1" android:layout_height="match_parent"/> <LinearLayout android:layout_width="match_parent" android:layout_weight="1" android:layout_height="match_parent"/> <LinearLayout android:layout_width="match_parent" android:layout_weight="1" android:layout_height="match_parent"/> <LinearLayout android:layout_width="match_parent" android:layout_weight="1" android:layout_height="match_parent"/> </LinearLayout> <LinearLayout android:id="@+id/linearLayout" android:layout_width="match_parent" android:layout_height="60dp" android:background="@color/white" android:weightSum="4" app:layout_constraintBottom_toBottomOf="parent"> <ImageView android:id="@+id/homeTap" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/hometaps" /> <ImageView android:id="@+id/tipTap" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/tiptaps" /> <ImageView android:id="@+id/bookmarkTap" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/bookmarks" /> <ImageView android:id="@+id/storeTap" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/koreanet" /> </LinearLayout> </androidx.constraintlayout.widget.ConstraintLayout></layout> 오류는 이렇습니다.E/AndroidRuntime: FATAL EXCEPTION: main Process: com.allaboutkorea.allaboutkorea, PID: 11378 java.lang.NullPointerException: inflate(inflater, R.layo…t_home, container, false) must not be null at fragment.HomeFragment.onCreateView(HomeFragment.kt:55) at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2963) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:518) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282) at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128) at androidx.fragment.app.FragmentManager.dispatchViewCreated(FragmentManager.java:3065) at androidx.fragment.app.Fragment.performViewCreated(Fragment.java:2988) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:546) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:282) at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:112) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1647) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3128) at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:3072) at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:251) at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:502) at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:246) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435) at android.app.Activity.performStart(Activity.java:8024) at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3475) at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221) at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201) at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:223) at android.app.ActivityThread.main(ActivityThread.java:7656) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)이런 오류가 뜨고, 앱을 켜고 들어가려는 순간 앱이 꺼집니다.도움을 주신다면 대단히 감사드리겠습니다.감사합니다!
-
미해결
설치 중 0x8000000d 에러
베릴로그 설치 중 계속 다음과 같은 에러가 발생합니다. 제 Window는 10이며, Ubuntu를 실행하면 0x8000000d 에러가 계속 발생합니다. Powershell에 위와 같은 코드를 넣어도 실행되지 않으며, Windows 기능 켜기/끄기에서 '가상 머신 플랫폼'과 '리눅스용 윈도우 하위 시스템'은 모두 켜놨습니다. 무엇이 문제인지 여쭤보고 싶습니다...
-
미해결생활코딩 - Linux
ls -a > result.txt를 두번한 결과에 대해서
1:22 쯤에 ls -a를 두번째 확인했던 내용이 그 이후 ls -a > result.txt에 업데이트?되어서 저장되어야 하는거 아닌가요?? 근데 왜 다르게 저장되나요?? ls -a라고 쳤을 때 total이 92개 나왔는데 ls -a >result.txt 했는데 왜 여전히 total 88개가 나오고 result.txt의 용량이 278인데 0으로 저장되어 나오나용???
-
미해결쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
구버네티스 랩환경 관련 가상머신 root 패스워드
[질문 전 답변]1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요]2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요]3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요](https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[질문 하기] 구버네티스 랩환경 관련 가상머신 root 패스워드 어떻게 됩니까
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
안녕하세요 질문드립니다
<html> <head> <title>그랩마켓</title> <link href="index.css" type="text/css" rel="stylesheet" /> </head> <body> <div id="header"> <div id="header-area"> <img src="images/icons/logo.png" /> </div> </div> <div id="body"> <div id="banner"> <img src="images/banners/banner1.png" /> </div> <h1>판매 상품들</h1> <div id="product-list"></div> </div> <div id="footer"></div> </body> <script> var products = [ { name: "농구공", price: 10000, seller: "조던", imageUrl: "/images/products/basketball1.jpeg", }, { name: "축구공", price: 50000, seller: "메시", imageUrl: "/images/products/soccerball1.jpg", }, { name: "키보드", price: 10000, seller: "그랩", imageUrl: "/images/products/keyboard1.jpg", }, ]; let productsHtml = ""; for (var i = 0; i < products.length; i++) { var products = products[i]; productsHtml = productsHtml + '<div class="product-card">' + "<div>" + '<img class="product-img" src="' + products.imageUrl + '"/>' + "</div>" + ' <div class="product-contents">' + '<span class="product-name">+"' + products.name + '" </span>' + '<span class="product-price"> "' + products.price + '" </span>' + '<div class="product-seller">' + '<img class="product-avatar" src="images/icons/avatar.png" />' + "<span>" + products.seller + "</span>" + "</div>" + "</div>" + "</div>"; } document.querySelector("#product-list").innerHTML = productsHtml; </script> </html> 5분 51초 농구공 3개 나열한 구간까지는 잘 따라왔는데 다음 구간 강의 듣고 해보니 이렇게 되었습니다 뭐가 잘못된 걸까요???
-
미해결파이썬 무료 강의 (활용편6) - 이미지 처리 (OpenCV)
관련이미지 링크
[학습자료] 수업에 필요한 이미지, 동영상 자료 링크입니다. 고양이 이미지 : https://pixabay.com/images/id-2083492/ 크기 : 640 x 390 파일명 : img.jpg 고양이 동영상 : https://www.pexels.com/video/7515833/ 크기 : SD (360 x 640) 파일명 : video.mp4 신문 이미지 : https://pixabay.com/images/id-350376/ 크기 : 1280 x 853 파일명 : newspaper.jpg 카드 이미지 1 : https://pixabay.com/images/id-682332/ 크기 : 1280 x 1019 파일명 : poker.jpg 책 이미지 : https://www.pexels.com/photo/1029807/ 크기 : Small (640 x 853) 파일명 : book.jpg 눈사람 이미지 : https://pixabay.com/images/id-1300089/ 크기 : 1280 x 904 파일명 : snowman.png 카드 이미지 2 : https://pixabay.com/images/id-161404/ 크기 : 640 x 408 파일명 : card.png 퀴즈용 동영상 : https://www.pexels.com/video/3121459/ 크기 : HD (1280 x 720) 파일명 : city.mp4 프로젝트용 동영상 : https://www.pexels.com/video/3256542/ 크기 : Full HD (1920 x 1080) 파일명 : face_video.mp4 프로젝트용 캐릭터 이미지 : https://www.freepik.com/free-vector/c... 파일명 : right_eye.png (100 x 100), left_eye.png (100 x 100), nose.png (300 x 100) 무료 이미지 편집 도구 : https://pixlr.com/kr/ (Pixlr E -Advanced Editor) [ 연락 ] nadocoding@gmail.com * 질문은 댓글을 통해서 해주세요 ^^ Images, Videos by pixabay, pexels : https://www.pixabay.com : https://www.pexels.com Designed by freepik : https://www.freepik.com