2014-04-23 110 views
-1

我创建了一个自定义列表视图与复选框,列表视图中的项目不可点击。我在这里做错了什么,我希望能够点击列表上的项目而不仅仅是复选框。自定义列表视图与复选框不可点击

save.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      data = store.getText().toString(); 
      list.add(data); 
      ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this, R.layout.list_view, R.id.textView1, list); 
      ls.setAdapter(adapter); 
     } 
    }); 
    ls.setOnItemClickListener(new OnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      String click = list.get(arg2).toString(); 
      Toast.makeText(getBaseContext(), "You Clicked " + click, Toast.LENGTH_SHORT).show(); 

     } 
    }); 

我对list_view.xml

<CheckBox 
    android:id="@+id/checkBox1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" /> 

    <TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignBaseline="@+id/checkBox1" 
    android:layout_alignBottom="@+id/checkBox1" 
    android:layout_toRightOf="@+id/checkBox1" 
    android:text="" /> 

activity_main.xml文件代码

<ListView 
    android:id="@+id/list" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/editText1" > 

    </ListView> 
    <EditText 
    android:id="@+id/editText1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:ems="10" /> 

<Button 
    android:id="@+id/btnSave" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentRight="true" 
    android:layout_alignTop="@+id/editText1" 
    android:text="Save" /> 

回答

0

它不工作,因为加入CheckBoxListView抢断ListView重点,你是不是能够点击列表项。有一个解决方法,不要使用复选框,但可以使用例如Drawable,ImageView或带参数setClickable(true)或XML android:clickable=”true”的TextView。它会做的事情,因为你不会失去的焦点ListView

相关问题