相关疑难解决方法(0)

Android在短暂点击+传递项目点击详细信息时打开ContextMenu

 lv.setOnItemClickListener(new OnItemClickListener() {
             @Override
          public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
              TextView text = (TextView) view.findViewById(R.id.btitle);
              registerForContextMenu(text);
              view.showContextMenu();
              }
            });
       }

     @Override
     public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
       super.onCreateContextMenu(menu, v, menuInfo);
       TextView text = (TextView) v.findViewById(R.id.btitle);
       CharSequence itemTitle = text.getText();
       menu.setHeaderTitle(itemTitle);

       MenuInflater inflater = getMenuInflater();
       inflater.inflate(R.menu.context_menu, menu);

     }
Run Code Online (Sandbox Code Playgroud)

你好,

我正在尝试在短项目点击上打开contextMenu.我只是在添加registerForContextMenu(getListView());某个地方时才设法这样做 但是这也会在长按(即我不希望发生)时触发contextMenu.

  • 试过,view.showContextMenu()但除非我添加,否则它什么都不做registerForContextMenu(getListView());.
  • 尝试首先注册点击的项目然后调用showContextMenu()但没有做任何事情......

此外,我想获得点击的项目图像+文本,以便我可以在contextMenu中使用它们.

感谢帮助!

android

21
推荐指数
3
解决办法
4万
查看次数

unregisterForContextMenu可以完全取消注册视图吗?

我有一个ListView,它可以有一个上下文菜单.我正在分别使用registerForContextMenuunregisterForContextMenu注册本身或与显示/工作的上下文菜单相关的任何问题.

为上下文菜单注册视图时,当用户单击它时,其背景会逐渐从橙色变为黄色,然后再变为白色.从未为上下文菜单注册视图(它保持相同的颜色)时,不会发生这种情况.但是,当我unregisterForContextMenu用来取消注册相关视图时,此效果仍然有效并且可能会使用户感到困惑 - 因为效果,他/她会期望一个上下文菜单.这说明unregisterForContextMenu并没有完全扭转效果registerForContextMenu.

我的问题是:有没有办法完全取消注册View获取上下文菜单?

如果有人更清楚地知道(un)registerForContextMenu内部如何运作,请分享您的想法.

编辑:我刚看到这不适用于HTC的感知界面,因为没有实现'美白'效果.所以这个问题仅适用于默认的Android界面.

android contextmenu

0
推荐指数
1
解决办法
1605
查看次数

标签 统计

android ×2

contextmenu ×1