2011-07-23 93 views
0

启动活动时,上下文菜单不会再显示我有三个选项卡,可以设置三个不同的活动。 当点击Tab3时,它的活动显示在TabView中。

public class MyMovies extends Activity{ 
     private ViewFlipper mViewFlipper; 
     @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.my_movies_1); 

      mViewFlipper = (ViewFlipper) findViewById(R.id.my_movies); 

      ... other code 
      } 

     @Override 
     public boolean onCreateOptionsMenu(Menu menu) { 
      super.onCreateOptionsMenu(menu); 
      startActivity(new Intent(this, Settings.class)); 
      return true; 
     } 
    } 

当我点击选项菜单时,它会很好地启动设置活动。当我点击返回按钮时,它会返回到此选项卡。但是,随后的选项菜单点击不再调用onCreateOptionsMenu。

有什么建议吗?

回答

0

尝试追赶Menu按钮点击

public boolean onKeyUp(int keyCode, KeyEvent event) 
    { 
     if (keyCode == KeyEvent.KEYCODE_MENU) 
     { 
      //populate the menu again 
     } 

     return true; 
    } 

以防万一:

你有这些标签设置活动您的清单

<category android:name="android.intent.category.ALTERNATIVE" /> 
    <category android:name="android.intent.category.SELECTED_ALTERNATIVE" /> 
+0

尼古拉的感谢!重写onKeyUp可以做到这一点。因为我的清单中的设置是否有两个类别标记没有区别,所以我没有放置它。仍然不确定为什么onCreateOptionsMenu被调用,但以后不会调用。试图阅读和理解什么android.intent.category.ALTERNATIVE和SELECTED_ALTERNATIVE bu – Kent

+0

onCreateOptionsMenu是某种程度上只是第一次创建它,只有当需要时才起作用。用简单的话来说。 –