devlog of ShinJe Kim

[TIL] 2019-08-14 (수)

|

Today I Learned

  • android:clickable 속성을 사용할 때에는 android:focusable 속성을 같이 사용해야만 한다. clickable 속성만 추가하면 'clickable' attribute found, please also add 'focusable'...이라는 메시지가 뜬다. 메시지를 클릭해보면 아래와 같은 설명이 있다.
Inspection info:A widget that is declared to be clickable but not declared to be focusable is not accessible via the keyboard. Please add the focusable attribute as well.  
Issue id: KeyboardInaccessibleWidget

즉, 클릭이 가능하게 만들고서 focus가 안되게 하면 키보드로는 접근할수가 없다는 것이다.

  • focus가 가능하게 하려면 뷰에 android:clickable="true", android:focusable="true", android:focusableInTouchMode="true" 이 세가지 속성을 모두 추가해야만 한다. 그리고 selector의 <item>android:state_focused="true" 속성을 추가하면 된다.
  • 안드로이드에서 select와 focus의 차이점이 무엇일까? 읽고 정리해서 업로드하자
  • drawable>shape에서 왜 size가 적용이 안될까.. 내일까지 꼭 방법을 찾을것이다.

Comments