2012-08-31 3 views
-1

, 어댑터의의 getView 구현은 다음과 같다, 그것은 longclickable입니다 : 왜 ListView를 길게 클릭 할 수 없습니까? 내가 활동의 후손에리스트 뷰 레이아웃을 사용하고

:

public View getView(int position, View convertView, ViewGroup parent) { 
    if (convertView == null) { 
     TextView tv = new TextView(CustomTitleActivity.this); 
     tv.setText(title[position]); 
     return tv; 
    } 
    return convertView; 
} 

을하지만이 같은 레이아웃 파일에서 항목의보기를 팽창하려고 할 때

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/local_songs_list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:focusable="false" 
    android:orientation="horizontal"> 
    <LinearLayout 
     android:layout_weight="1" 
     android:focusable="false" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 
     <TextView 
      android:id="@+id/title" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent" 
      android:focusable="false" 
      android:text="TITLE" 
      android:textAppearance="?android:textAppearanceSearchResultTitle" 
      /> 
     <TextView 
      android:id="@+id/artist" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent" 
      android:text="Unknow" 
      android:focusable="false" 
      android:textAppearance="?android:textAppearanceSearchResultSubtitle" 
      />  
    </LinearLayout> 

    <LinearLayout 
     android:layout_weight="3" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
      android:focusable="false" 
     android:orientation="horizontal"> 
     <ImageButton 
     android:id="@+id/favorite" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:src="@drawable/ic_favourite" 
      android:background="#0000" 
      android:focusable="false" 
      android:onClick="onToggleStar"/> 

     <CheckBox 
     android:id="@+id/select" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:visibility="visible" 
      android:focusable="false"/> 
    </LinearLayout> 
</LinearLayout> 

클릭/길게 클릭 할 수 없어서 이미 android : focusable 속성을 false로 설정하려고했습니다. 누군가 내게 힌트를 줄 수 있습니까?

+0

textviews를 longclick/click 하시겠습니까? – wtsang02

+0

당신은 http://stackoverflow.com/questions/2130875/onclicklistener-on-a-linearlayout을 시도해 봤나? (LinearLayout 전체를 클릭 할 필요가있는 경우)? – sandrstar

+0

@Willie Tsang 나는 클릭 할 수있는 전체 LinearLayout을 원한다. – liuyong

답변

1

직접 답변 해주세요. ImageButton의 생성자에서 setFocusable (true)을 다시 호출하므로 실제로 포커스가 필요하지 않은 경우 ImageButton을 생성 한 후에 setFocusable (false)을 호출하면됩니다. 그런 다음 문제가 해결되었습니다.

관련 문제