2013-03-25 41 views
2

我有一个上下文菜单,其中包含一个子菜单,当我点击该项目打开子菜单时,子菜单打开/关闭,很快重新开放。这是非常烦人的,但更多的问题,我的一些用户根本没有看到子菜单,它打开/关闭,就是这样!Android上下文子菜单自己重新打开

现在经过试验,我发现在我释放项目后,长时间按下该项目实际工作:子菜单正常打开并保持打开状态!

所以我决定建立一个非常基本的项目相信我在我的应用程序有一个bug,创建了向导,单个活动,关于这一点我registerForContextMenu单个文本和上下文菜单用一个简单的子一个新的应用菜单。

该问题立即转载!有没有人遇到同样的问题,并可以告诉我我做错了什么?我相信我遵循了文档和示例,但我无法在任何地方找到任何有关此问题的信息!

我已经将问题发布到Google群组上并作为Android项目的问题进行了报告,但至今没有人回复,以下是包含测试项目的两个链接(不确定如何附加文件这里?)。

https://code.google.com/p/android/issues/detail?id=53239&can=4&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

https://groups.google.com/forum/?fromgroups=#!topic/android-developers/SLteohmgyy0

+0

您好,没有人在那里提供一些洞察到这一点?这似乎是基本的东西,我很惊讶没有人有过这个问题呢? – 3c71 2013-04-29 10:50:45

回答

2

为了解决这个问题,我曾在上下文菜单中摆脱任何子菜单,而是打开项目选择另一个上下文菜单。

下面摆脱了闪烁,并确保子菜单保持打开状态。不得不使用备用隐藏视图来打开新的上下文菜单。

if (id == R.id.menu_item_for_sub_menu) 
    { 
     new Handler().postDelayed(new Runnable() 
     { 
      @Override 
      public void run() 
      { 
       View v = vg.findViewById(R.id.fake_view_for_context); 
       if (v != null) 
       { 
        registerForContextMenu(v); 
        openContextMenu(v); 
        unregisterForContextMenu(v); 
       } 
      } 
     }, 0); 
    }