Android:为自定义ListAdapter注册ContextMenu

Pri*_*han 2 android contextmenu list adapter

我制作了一个扩展Base适配器的自定义列表适配器.列表中的每个项目都有一个图像按钮,2个文本视图和一个按钮.我尝试将上下文菜单添加到列表中,以便显示列表中项目的一些选项.

registerForContextMenu(getListView());
Run Code Online (Sandbox Code Playgroud)

我使用MenuInflater对象来膨胀上下文菜单xml文件.但是在单击列表中的项目时,没有显示任何内容,或者未显示单击列表项目的常规突出显示.是否上下文菜单不适用于自定义列表视图?任何帮助将非常感激.

此致,Primal

小智 9

确保ListView的子项必须是Long Clickeable.

它可以在xml布局文件中完成,例如:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:longClickable="true">

    <!-- Child elements -->

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

或者它可以在java代码中完成:

@Override
public View newView(Context context, Cursor cursor, ViewGroup parent) {
   CustomView customView = new CustomView();
   customView.setLongClickeable(true);
}
Run Code Online (Sandbox Code Playgroud)

我希望它有所帮助.