728x90
뷰들을 동적 생성하면서 흔히 접하는 Exception 이 있다.
위 경우는
TableLayout 을 생성하는 경우이다.
TableRow 를 생성해서 TextView 로 속성값을 생성하여 addView() 하고 완성된 한 행을
TableLayout 에 addView 를 하는 것이다.
java.lang.IllegalStateException: The specified child a already has a parent. You must call removeView() on the child's parent first
이 예외는 이미 한번 addView 한 View 타입을 한번 더 addView 할 때 발생한다. (중복 추가)
TableRow 한 행을 완성한 후 TableLayout 에 addView 하는 것이 맞다.
이 경우는 쉽게 보이는 경우고 View 를 많이 다룰 때 헷갈려서 위 예외가 발생하는 경우가 있어서
동적 생성 단계를 하나하나 잘 파악하고 그려나가면서 addView 하는 것이 좋을 것 같다.
'Front-end > Android (안드로이드 앱 개발)' 카테고리의 다른 글
Kotlin Android Jetpack Compose 기초 (0) | 2024.04.02 |
---|---|
[Kotlin] 위젯 : 텍스트뷰 , EditText / 리소스 : drawable , mipmap (0) | 2021.10.31 |
Android Studio , 채팅 구현하기 | 메시지 읽음 표시 (0) | 2021.02.17 |
Android Studio , 채팅 구현하기 | 대화상자 AlertDialog 채팅 프로필 상태메시지 (0) | 2021.02.14 |
Android Studio , 채팅 구현하기 | Firebase realtime Database chat / 파이어베이스 실시간 데이터 베이스 (5) | 2021.02.07 |
댓글