使用android

时间:2016-02-27 16:54:42

标签: java android

我正在尝试创建此处所述的滑动视图http://developer.android.com/training/implementing-navigation/lateral.html

我根据final ActionBar actionBar = getActionBar();

的文档创建了一个操作栏

但我收到以下消息

  

java.lang.NullPointerException:尝试调用虚方法'void   null对象上的android.app.ActionBar.setNavigationMode(int)'   参考

与此行actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);

有关

现在我已经确定可能与我的主题没有操作栏有关,请参阅android:theme="@style/Theme.AppCompat.Light.NoActionBar">,因此我将主题更改为android:theme="@style/Theme.AppCompat.Light">,但之后我收到以下消息:

  

java.lang.IllegalStateException:此Activity已经有一个动作   酒吧提供的窗户装饰。不要求   Window.FEATURE_SUPPORT_ACTION_BAR并将windowActionBar设置为false   你的主题改为使用工具栏

并且互联网上的所有答案都说要更改为非操作栏主题,这会再次给我第一个错误。所以我真的在圈子里走来走去。我想基本上有一个带有标签的操作栏,如文档中所述。

1 个答案:

答案 0 :(得分:0)

此主题已有ActionBar

android:theme="@style/Theme.AppCompat.Light"

当然,您正在尝试使用ActionBar主题AppCompat。{/ p>

因此,您需要使用Theme.Holo作为旧版ActionBar,或者如果您使用的是Theme.AppCompat,则需要将其与getSupportActionBar一起使用,如下所示:< / p>

actionbar = getSupportActionBar();

请检查此问题:actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS) deprecated