Android 第十九天 自定义ActionBar遇到问题

问题一:
在Android开发中,使用ToolBar控件替代ActionBar控件,需要在java代码中使用setSupportActionBar()方法,如下:

Toolbar toolbar = (Toolbar) this.findViewById(R.id.toolBar);
this.setSupportActionBar(toolbar);
原因:方法参数报错

这种报错是因为导错了类,把以下代码

import android.widget.Toolbar;
更换成以下代码

import android.support.v7.widget.Toolbar;
修改ok

问题二:
carsh报如下错误:Unable to start activity ComponentInfo{com.xiaoyan.wether/com.xiaoyan.wether.MainActivity}: java.lang.IllegalStateException: 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.

最终找到原因:
在AndoridMainfest.xml中如下设置:
android:theme="@style/AppTheme"
然后sytle中AppTheme如下设置:
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>

其中parent="Theme.AppCompat.Light.DarkActionBar"设置为parent="Theme.AppCompat.Light.NoActionBar"即可。
ok。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容