listview의 OnItemClickListener가 작동하지 않을 때

하던 플젝중에 리스트뷰를 달고 xml 파일 하나 읽어서 그 안의 형식에 맞춰서
item을 하나씩 추가하는 기능이 있는데
이게 나중에 추가된 리스트를 선택해서 해당 항목을 가져와야 하는 일을 해야 한다.

근데

 mListView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
Log.d("linsoo","aaa=");
}

});

이 항목이 콜백이 걸리질 않는다
이거 때문에 하루를 삽질해서 찾아낸 결과는
추가하는 칼럼 xml 파일에 최상위 루트 레이아웃에

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:background="#ffffe699"
    android:orientation="horizontal"
    android:descendantFocusability="blocksDescendants"
    android:weightSum="1" >

처럼 android:descendantFocusability=”blocksDescendants” 항목을 추가해줘야 한다.
그러면 콜백이 들어가짐

출처: http://stackoverflow.com/questions/5551042/onitemclicklistener-not-working-in-listview-android


크리에이티브 커먼즈 라이선스Linsoo의 저작물인 이 저작물은(는)크리에이티브 커먼즈 저작자표시-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.

댓글 남기기

이메일은 공개되지 않습니다.

This site uses Akismet to reduce spam. Learn how your comment data is processed.