android 4中的自定义格式的action bar不能运行

对于自定义的 action bar,我在 xml 中使用下面的代码:

<style name="CustomActionbarTheme" parent="@style/Theme.AppCompat.Light">
    <item name="actionBarTabStyle">@style/customTab</item>
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>

<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
    <item name="background">@drawable/title_bar</item>
</style>

<style name="customTab" parent="@style/Widget.AppCompat.ActionBar.TabView">
    <item name="android:background">@drawable/tab_bg_selector</item>
</style>

使用 api level 10 没有问题,但是当我在高点的 api 设备上运行代码时,action bars 是默认的主题。

我在程序中使用的是 library v7。
为什么这个 action bar 不能运行呢?

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇文章讲的很详细,请看:连Action Bar都不会 你能说你学过 Android?
  • 除此之外, 这篇博客: android(八) actionbar的使用中的 实例:模拟微信实现带向上导航按钮的Action Bar 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    开发步骤:①布局管理器并创建FriendsActivity②判断父Activity是否为空,不为空设置导航图标显示③为FriendActivity配置父Activity

    要跳转几个页面就设置几个activity

    通过点击imageview来启动另一个activity:

    1.获取朋友圈图片:imageView=(ImageView)findViewById(R.id.imageView);

    2.为图像视图设置单击事件监听器:imageView.setOnClickListener

    3.在单击事件监听器下创建Intent对象:Intent intent=new Intent(MainActivity.this,FriendsActivity.class);

    4.启动Activity:startAcitivyt(intent);

    在manifests中可以设置标题栏的文字:android:label=“微信”

    在FriendActivity中判断父Activity是否为空,不为空设置导航图标显示

    if(NavUtils.getParentActivityName(FriendsActivity.this)!=null){}//判断当前的activity和父acitivity是否为空

    getSupportActionBar().setDisplayHomeAsUpEnabled(true);//getSupportActionBar()来获取到actionbar对象,setDisplayHomeAsUpEnabled(true)来设置向左的导航图标

    在Android-manifests来为FriendActivity配置父Activity

    在<activity标签中(带有android:name):

    <meta-data

    android:name=“android.support.PARENT_ACTIVITY”

    android:value=".MainActivity"/>//设置主activty,就是要跳转的activity

    在这里插入图片描述


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^