상세 컨텐츠

본문 제목

로그인 페이지 만들기 4

실습/과제

by 뽀사장 2024. 3. 27. 14:47

본문

728x90
반응형

 

이번엔 로그인이 완료되고 화면이 홈으로 전환 될 때 이미지가 랜덤으로 보이게 만들어봤다

 

val imgeView = findViewById<ImageView>(R.id.randomImageView)
        val imgeList = listOf("aaa.png", "bbb.png", "ccc.png", "ddd.png", "jg.png")
        val random = imgeList.random()
        imgeView.setImageResource(random)

 

처음에 코드를 이렇게 작성했는데 imgeView.setImageResource(random)에서 random에 빨간줄이 그이며 실행이 안됐다

resource를 못찾겠다는데 뭔소린지 몰라서 튜터님 도움을 받아 수정했다

 

val imgeView = findViewById<ImageView>(R.id.randomImageView)
        val imgeList = listOf(R.drawable.aaa, R.drawable.bbb, R.drawable.ccc, R.drawable.ddd, R.drawable.jg)
        val random = imgeList.random()
        imgeView.setImageResource(random)

 

각 파일의 위치를 하나하나 지정해주었더니 오류 메시지는 사라졌다

이후 에뮬레이터를 실행했는데 로그인 이후 홈화면으로 넘어갈 때 앱이 종료되어버렸다...

 

 

다시 문제를 확인해보니 회원가입 -> 로그인 으로 넘어올 때 가지고 온 "이름"이 초기화가 되지않아서 문제라고 한다

회원가입에서 로그인으로 넘어올때 아이디, 비밀번호, 이름을 넘겨받았고 모두 lateinit으로 선언한 후 아이디와 비밀번호는 써야하니까 그 과정에 초기화가 되었는데 이름은 홈화면으로 넘기기 위해서 받아 온거라 로그인페이지에서 초기화가 되지 않았다

그래서 lateinit을 지우고 var myname: String? = null으로 수정했다

null을 보는순가 뭔가 코틀린 언어를 쓰는 사람으로써 잘못됐다는 생각이 들었다

그래서 코드를 좀더 다듬는 방법을 물어보니까 회원가입할때 쓴 내용을 회원정보로 한번에 받아서 필요한 부분을 뽑아내는 방법이 있다고 알려주셨는데 방법이 이해는 됐으나 이번에도 코드를 어떻게 쓰는지가 문제였다

 

배열에 대해서 좀 더 공부하고 예제를 좀더 찾아보다가 과제해설이 나오면 제대로 이해를 했는지 어떻게 적용시키는지 뜯어봐야겠다

 

 

728x90
반응형

'실습 > 과제' 카테고리의 다른 글

로그인 페이지 만들기 3  (0) 2024.03.26
로그인 페이지 만들기 2  (0) 2024.03.25
로그인 페이지 만들기 1  (0) 2024.03.21
개인과제 시작 2  (0) 2024.03.07
개인과제 시작 1  (0) 2024.03.06

관련글 더보기