toobar---闪退问题

最近在做一个项目,使用了第三方的开源项目,主要是想实现android5.0之后推出的MaterialDesign的风格,但是代码已经写好了,发现一运行就闪退,所以就开始debug,发现问题出现在

1  Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
2   setSupportActionBar(toolbar);

很显然应该是在第二行出错了,再根据logcat上的日志:

This Activity already has an action bar supplied by the window decor. 
Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.

所以应当是与activity中的ActionBar有冲突,最后尝试多次知道,是要在清单文件中设置activitystyle
(只要有用到这一行代码的activity都需要在该activity节点下定义style),可以按照如下设置

1 <activity android:name=".MainActivity"
2             android:label="test"
3             android:theme="@style/MaterialDrawerTheme.Light.DarkToolbar">
4             <intent-filter>
5                 <action android:name="android.intent.action.MAIN"/>
6 
7                 <category android:name="android.intent.category.LAUNCHER"/>
8             </intent-filter>
9         </activity>

这里指的就是第三行了,这样就不会造成程序崩溃了。

原文:http://www.cnblogs.com/ghylzwsb/p/5845619.html


PS:我遇到的闪退情况

在我们准备使用ToolBar代替ActionBar,因此需要指定一个不带ActionBar的主题,打开res/values/stytles.xml中修改:

<resources>

    <!-- Base application theme. -->
    <!-- 需要一个不带actionBar的主题 Theme.AppCompat.Light.NoActionBar(浅色)Theme.AppCompat.NoActionBar(深色)-->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

</resources>




©️2020 CSDN 皮肤主题: 书香水墨 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值