2017-10-07 70 views
-2

當我點擊listview項目包含textview和複選框,setOnItemClickListener不工作Android的列表視圖中包含複選框setonItemclick不工作

這是我的java代碼

的Android listview包含複選框setonItemclick不工作

etiket_list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> parent, View view, int position, 
            long id) { 
       final Database dbD = new Database(context); // Db bağlantısı oluşturuyoruz. İlk seferde database oluşturulur. 
       Tags = dbD.Etiketler(); 
       final int temp_id = Integer.valueOf(Tags.get(db.Etiketler().size()-position-1).get("tag_id")); 
       final int pozisyon=db.Etiketler().size()-position-1; 
       if (syac % 2 == 0) { 
        val_tag=val_tag+Tags.get(pozisyon).get("tag")+" "; 
        tag.setText(val_tag); 
        syac++; 
       } else { 
        String newTags = tag.getText().toString().replaceAll(Tags.get(pozisyon).get("tag"),""); 
        syac++; 
        tag.setText(newTags); 
       } 

      } 
     });   

這是我的清單項目XML代碼:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:focusable="false" 
    android:descendantFocusability="blocksDescendants" 
    android:weightSum="1"> 

    <FrameLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.09" 
     android:background="#f8f8f8" 
     android:descendantFocusability="blocksDescendants" 
     android:id="@+id/item_li_frame"> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textAppearance="?android:attr/textAppearanceSmall" 
      android:text="list_item_etiket2" 
      android:id="@+id/list_item_etiket2" 
      android:layout_gravity="left|center_vertical" 
      android:layout_marginLeft="16dp" 
      android:layout_marginRight="6dp" 
      android:textColor="#4a4a4a" 
      android:textStyle="bold" 
      android:focusableInTouchMode="false" 
      android:focusable="false" 
      android:textSize="16dp" /> 

     <CheckBox 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:id="@+id/etiket_checkBox" 
      android:layout_gravity="right|center_vertical" 
      android:focusable="false" 
      android:focusableInTouchMode="false" 
      android:layout_marginRight="16dp" /> 
    </FrameLayout> 
</LinearLayout> 

的Android listview包含複選框setonItemclick不工作

回答

0

你已經把一個TextViewCheckBoxFrameLayout所以checkBox位於textView以上,消耗的觸摸事件。將它們放置在不同的佈局中,如LinearLayout