Android 为Tab添加Menu


在Android中,TabActivity类中没有与Menu有关的方法,所以如果单独使用TabActivity进行开发时,是无法创建菜单项的。为了给Tab增加菜单,有如下两种方法:

1.      主事件继承Activity。这样就可以在主事件中直接重写OnCreateOptionsMenu方法,为程序添加Menu。如果每个Tab需要有不同的Menu,可以为TabHost添加一个OnTabChangedListener,在这个Listener中对一个全局变量(比如intMenuNumber)进行修改,这样在OnCreateOptionsMenu时对这个变量进行switch()操作,就可以为不同的Tab添加不同的Menu。

方法优点:如果所有Tab共用一个Menu,该方法非常简便。

方法缺点:主事件类非常庞大;如果每个Tab要使用不同的Menu,步骤将比较繁琐。

2.      主事件继承TabActivity,然后需要使用Menu的Tab新建一个继承自Activity事件,调用的时候使用setContent(new Intent().setClass(this,NewActivity.class))方法即可。这样一来,每个新建的Activity可以自己重写OnCreateOptionsMenu方法,添加过程将非常灵活。

方法优点:为每个Tab开发单独的Menu非常容易,开发过程较为灵活。

方法缺点:Tab与Tab之间数据通信比较复杂。

更多Android相关信息见Android 专题页面 http://www.bkjia.com/topicnews.aspx?tid=11

相关内容