我遇到了问题...我想使用尚未创建的操作栏选择一个标签,如何创建它以及点击它?我可以实例化它,然后呢?我不太明白我做了几次尝试:( 提前谢谢你:)
java.lang.NullPointerException
at com.megadown.megacodownloader.Tab_Search$2.onClick(Tab_Search.java:215)
at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:166)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
答案 0 :(得分:0)
我不知道我是否理解您的问题,但如果您想在TabBar
中创建ActionBar
(请阅读this link以获得正确的图书馆),而不是将以下代码添加到Activity
:
// i use ActionBarSherlock library:
// get an instance of your actionbar and set your navigation mode to tabbar
mContext.getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
//create a tab and add it to your actionbar
tabHome = mContext.getSupportActionBar().newTab();
tabHome.setText(tabItemHome);
tabHome.setTag(tabItemHome);
tabHome.setTabListener(this); // TabListener
mContext.getSupportActionBar().addTab(tabHome);
要检查单击了哪个选项卡,您必须实现TabListener
(在我的代码示例中,activity实现了一个tablistener)。您可以覆盖以下方法:
@Override
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
// todo
}
@Override
public void onTabUnselected(ActionBar.Tab tab, FragmentTransaction ft) {
// todo
}
@Override
public void onTabReselected(ActionBar.Tab tab, FragmentTransaction ft) {
// todo
}
如果您有更多问题,请与我们联系。