스마프폰에 keyboard를 연결 후 키보드 방향키를 이용하여 아이템 선택시

선택 또는 포커스가 이동하지 않거나 선택되어도 highlighting이 표시되지 않는 경우

selector를 설정하고 일반 뷰의 속성에 focusable을 true로 설정해주면 정상적으로 동작이 된다.

아래의 색칠한 부분을 참조.


selector_bg.xml

<?xml version="1.0" encoding="UTF-8"?>

 <selector xmlns:android="http://schemas.android.com/apk/res/android">

     <item android:state_focused="true"

           android:drawable="@drawable/btn_bg_selected" />

     <item android:state_pressed="true"

           android:drawable="@drawable/btn_bg_selected" />

     <item android:state_selected="true"

           android:drawable="@drawable/btn_bg_selected" />

     <item android:drawable="@drawable/btn_bg" />

 </selector>


====================


test_layout.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    android:orientation="vertical" >

    <LinearLayout 

        android:layout_width="fill_parent"

        android:layout_height="wrap_content"

        android:layout_gravity="center"

        android:orientation="vertical"

        android:focusable="true"

        android:background="?android:attr/selectableItemBackground"

        />

    <ImageView

        android:id="@+id/img1"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:src="@drawable/icon_img1"

        android:focusable="true"

        android:background="@drawable/selector_bg"

        />

    <ImageView

        android:id="@+id/img2"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:src="@drawable/icon_img2"

        android:focusable="true"

        android:background="@drawable/selector_bg"

        />

</LinearLayout>


'programmer > android' 카테고리의 다른 글

touch block  (0) 2013.07.08
status bar  (0) 2013.07.08
popupwindow example  (0) 2013.07.03
usb event broadcastreceiver  (0) 2013.07.03
ringtone/alarm tone 설정  (0) 2013.07.01

+ Recent posts