250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 막무가내
- 막내의막무가내 프로그래밍
- 막내의 막무가내
- 막내의막무가내 안드로이드 코틀린
- 막내의막무가내 목표 및 회고
- Fragment
- 프래그먼트
- 안드로이드 sunflower
- 주엽역 생활맥주
- 막내의막무가내 안드로이드
- 막내의막무가내 플러터 flutter
- 막내의막무가내 SQL
- 2022년 6월 일상
- 막내의막무가내 플러터
- 부스트코스
- 안드로이드
- 부스트코스에이스
- flutter network call
- 막내의막무가내
- 막내의막무가내 안드로이드 에러 해결
- 프로그래머스 알고리즘
- 막내의막무가내 코틀린 안드로이드
- 막내의막무가내 코볼 COBOL
- 주택가 잠실새내
- 안드로이드 Sunflower 스터디
- 막내의막무가내 rxjava
- 막내의 막무가내 알고리즘
- 막내의막무가내 알고리즘
- 막내의막무가내 코틀린
- 막내의막무가내 일상
Archives
- Today
- Total
막내의 막무가내 프로그래밍 & 일상
[안드로이드] 데이터바인딩 xml onclick 한글 파라미터 오류 해결 본문
728x90
[2021-04-14 업데이트]
가장 하단에 새 해결방법을 참고해주세요 :)
데이터바인딩에서 3번째 사진과 같이 onClick 리스너로 뷰모델에 지역이름을 전달하려고했습니다.
하지만 빌드시 계속 kapt 에러가 났고 assemble로 나와도 에러메시지는 뜨지가 않았습니다. ㅠㅠ
계속 구글링을 해봤는데도 원인은 찾을수 없던 와중에 혹시 한글 String 은 못 넘기나? 해서 다음과 영어로 쓰니까 바로 해결되더라고요
그래서 영어로 바꿔서 해결해줬습니다
만약 다른 해결방법을 아시는분은 댓글 달아주시면 감사하겠습니다.
-> 답변이 달렸습니다. strings.xml 리소스를 이용하면 됩니당
[새 해결 방법]
답변하신대로 해서 해결했습니다. String Resource 파일(strings,xml) 에 문자를 저장하고 그것을 가져다가 쓰면 해결됩니다.
strings.xml
<string name="num_unit_text">명</string>
데이터바인딩 쪽은
android:text="@{reservation.num + @string/num_unit_text}"
이런식으로 하면 됩니다.
예시2)
뷰모델
fun goBoardList(board: String) {
Log.d("AAAA", board.toString())
}
xml
<TextView
android:id="@+id/tv_free"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="@{()->vm.goBoardList(@string/free_board_text)}"
android:paddingStart="@dimen/padding_32dp"
android:paddingTop="@dimen/padding_12dp"
android:paddingEnd="0dp"
android:paddingBottom="@dimen/padding_12dp"
android:text="@string/free_board_text"
android:textColor="@color/colorBlack"
android:textSize="@dimen/text_size_20sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/tv_graduate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:onClick="@{()->vm.goBoardList(@string/graduate_board_text)}"
android:paddingStart="@dimen/padding_32dp"
android:paddingTop="@dimen/padding_12dp"
android:paddingEnd="0dp"
android:paddingBottom="@dimen/padding_12dp"
android:text="@string/graduate_board_text"
android:textColor="@color/colorBlack"
android:textSize="@dimen/text_size_20sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_free" />
댓글과 공감은 큰 힘이 됩니다. 감사합니다 .!!
728x90
'안드로이드 > 코틀린 & 아키텍처 & Recent' 카테고리의 다른 글
[안드로이드] 안드로이드 이중 어댑터(이중 리사이클러뷰) 구현 메모 (feat. 데이터바인딩) (0) | 2020.08.31 |
---|---|
[안드로이드] 한국관광공사 API Service key error 처리 (SERVICE KEY IS NOT REGISTERED ERROR) (0) | 2020.08.30 |
[안드로이드] Android Jetpack WorkManager 백그라운드 작업처리 정리 (2) | 2020.08.19 |
[안드로이드] Jetpack Navigation BottomNavigationView backstack error 처리 (0) | 2020.08.11 |
[안드로이드] DI Dagger2 @Singleton vs @Resuable 차이점 정리 (0) | 2020.08.08 |
Comments