创建没有 ListActivity 的上下文菜单

Posted

技术标签:

【中文标题】创建没有 ListActivity 的上下文菜单【英文标题】:Create context menu without ListActivity 【发布时间】:2012-04-11 01:23:26 【问题描述】:

我想在我的应用程序中创建一个上下文菜单。但是没有ListActivity 就很难了。 我有一个FragmantActivity 和一个ViewPagerViewPager 的适配器包含一些扩展LinearLayout 的视图。那些LinearLayout 视图包含一个列表视图。

那么如何在扩展LinearLayout 的类中创建ContextMenu

所以这是我提到的类,我清除了代码,只显示了我想要一个上下文菜单的列表视图

public class Days extends LinearLayout 

public Days(Context context, AttributeSet attrs, String day) 
    super(context, attrs);
    init(day);

public Days(Context context, String day) 
    super(context);
    init(day);

private void init(String day) 
    final ListView lv = new ListView(getContext());
    lv.setPadding(0, 5, 0, 5);
    Adapter adapter = new CustomListviewAdapter(getContext(), orak);
    ((BaseAdapter) adapter).notifyDataSetChanged();
    lv.setAdapter((ListAdapter) adapter);   
    LayoutParams params = new LayoutParams(LayoutParams.FILL_PARENT,
            LayoutParams.FILL_PARENT);

addView(lv, params);

这是我在其中添加此布局的 viewpager 适配器类

private class MyPagerAdapter extends PagerAdapter 

    private ArrayList<LinearLayout> views;

    public MyPagerAdapter(Context context) 
        views = new ArrayList<LinearLayout>();
        views.add(new Days(context, "Monday"));
                     ......... etc..

    

这个viewpager在一个简单的活动中

如果有人知道答案,请帮忙。

【问题讨论】:

【参考方案1】:

listActivity 和上下文菜单之间的联系是什么? 您不能按照here 的说明注册上下文菜单的视图吗?

【讨论】:

正如我所说我没有列表活动 对不起,我误会了,所以我知道它只有在 lisactivitys 中才有可能,我会看看你的链接 不,我不能使用 registerForContextMenu(getListView());因为视图是在viewpagers适配器中添加的,这是另一个类,所以我必须在linearlayout中进行。

以上是关于创建没有 ListActivity 的上下文菜单的主要内容,如果未能解决你的问题,请参考以下文章

ListActivity与Adapter以及SQLite的使用

如何为 ListBoxItems 创建动态上下文菜单?

UnsupportedOperationException with ArrayAdapter.remove [重复]

如何将复选框添加到 ListActivity 而不会丢失 onListItemClick 功能?

是否有带有上下文菜单的 dojo 增强网格示例

我可以使用兼容包 v4 创建 Fragment ListActivity 吗?