Android - CheckBox阻止onCreateContextMenu

时间:2014-07-15 13:25:25

标签: android listview checkbox

我为我的列表注册了上下文菜单:

this.registerForContextMenu(listView);

并实现所需的方法:

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
    AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo;

    menu.setHeaderTitle("title");

    String[] rssContextMenuItems = this.getResources().getStringArray(R.array.my_array);
    for (int i = 0; i < rssContextMenuItems.length; i++)
        menu.add(Menu.NONE, i, i, rssContextMenuItems[i]);
}

问题是我在列表中有一个自定义视图,其中包含一个复选框。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:focusable="false"
    android:orientation="horizontal" >

    <!-- some elements -->

    <CheckBox
        android:id="@+id/my_id"
        android:layout_width="0dip"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:focusable="false"
        android:focusableInTouchMode="false" />

    <!-- some more -->

</LinearLayout>

我已经尝试了android:focusable="false"android:focusableInTouchMode="false"技巧,但是当我长按复选框时,它仍然不会触发onCreateContextMenu方法。

有没有办法让这个工作?

0 个答案:

没有答案