首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安卓- ActionbarSherlock风格的配置应该是什么?

安卓- ActionbarSherlock风格的配置应该是什么?
EN

Stack Overflow用户
提问于 2013-06-18 23:04:03
回答 2查看 806关注 0票数 2

我在这些文件夹中有3个styles.xml文件:

资源/值:

代码语言:javascript
复制
<style name="CustomTheme" parent="Theme.Sherlock.Light">
    <item name="android:windowBackground">@color/white</item>
    <item name="android:colorBackground">@color/white</item>
</style>

资源/值-v11

代码语言:javascript
复制
<style name="CustomTheme" parent="android:Theme.Holo.Light">
    <item name="android:windowBackground">@color/white</item>
    <item name="android:colorBackground">@color/white</item>
</style>

资源/值-v14

代码语言:javascript
复制
<style name="CustomTheme" parent="android:Theme.Holo.Light">
    <item name="android:windowBackground">@color/white</item>
    <item name="android:colorBackground">@color/white</item>
</style>

让v11和v14将Holo.Light作为配置是否正确?然后将Theme.Sherlock.Light作为默认设置?

我在一个v-11模拟器上进行测试,我不得不在代码中添加下面这一行:

代码语言:javascript
复制
setTheme(R.style.Theme_Sherlock_Light);

但我不确定它是否适用于所有必要的版本。这是正确的设置吗?或者我需要调整一些东西吗?我有点困惑,既然已经在xml中指定了主题,为什么还要在代码中指定它。

谢谢,亚历克斯

EN

回答 2

Stack Overflow用户

发布于 2013-06-21 18:23:57

如果我没有误解你的疑虑:

《神探夏洛克》是安卓ActionBar在老款设备上的一个移植。因此,如果你使用的是“神探夏洛克”,你可以在两种设备(旧设备和新设备)上获得相同的android:Theme.Holo.Light风格。如果您想要在旧设备上应用样式,则必须删除android:前缀

这样,新旧设备的外观都是一样的

代码语言:javascript
复制
<style name="CustomTheme" parent="Theme.Sherlock.Light">
    <item name="android:windowBackground">@color/white</item>
    <item name="android:colorBackground">@color/white</item>
    <item name="windowBackground">@color/white</item>
    <item name="colorBackground">@color/white</item>
</style>

因此,您可以保留style文件,如果您需要在平板电脑和手持设备上进行不同的自定义,您可以自定义dimenscolors文件

票数 6
EN

Stack Overflow用户

发布于 2013-06-28 13:31:05

默认情况下,ActionBar神探夏洛克会是这样的,它与每个版本都是兼容的。

在样式中:

代码语言:javascript
复制
  <style name="ExampleTheme" parent="Theme.Sherlock.Light.DarkActionBar">
    <item name="homeAsUpIndicator">@drawable/new_indicator</item>
    <item name="android:homeAsUpIndicator">@drawable/new_indicator</item>
</style>

在v11中

代码语言:javascript
复制
<style name="AppTheme" parent="android:Theme.Holo.Light" />

在v14中

代码语言:javascript
复制
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar" />

在清单文件中,它将声明为

代码语言:javascript
复制
android:theme="@style/ExampleTheme" >

所以我可以说,每个android版本都默认使用values style。不需要关心v11和v14。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17172340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档