2012-11-28 74 views
1

我已经看到了两种设置Android App屏幕背景的方法。android:background - “?attr/actionBarItemBackground”..它是如何工作的?

情况下,A ::安卓背景=

情况下,B :: Android的 “ATTR/actionBarItemBackground?”:背景= “@绘制/ ic_launcher_settings”

怎么办安卓的情况下的后台功能?我搜索了代码,但无法弄清楚“actionBarItemBackground”的存在位置。我了解情况B

+0

By to By,我使用ActionBarSherlock。 –

回答

2

案例A是对style属性的引用。它允许您在不知道其实际值的情况下引用特定的样式信息。有很多Android定义的属性用于设置Android UI的样式,但您也可以定义您自己的属性。

actionBarItemBackground就是这样一个属性。有两种方法,你可以使用这个属性:

  1. 你可以参考它,使外观和感觉的UI元素与动作栏项目一致的:

    <com.mycompany.MyView 
        android:id="@+id/myView" 
        android:background="?attr/actionBarItemBackground"/> 
    
  2. 您可以定义一个主题,设置该属性的值来覆盖缺省大号& F表示您的应用程序:

    <style name="MyTheme" parent="@android:style/Theme"> 
        <item name="android:actionBarItemBackground">#383c44</item> 
    </style> 
    

以下是Android文档的一些指示:

对于样式,主题请参阅:
http://developer.android.com/guide/topics/ui/themes.html

所有属性的列表,请参阅:
http://developer.android.com/reference/android/R.attr.html

为了定义自己的属性没有文档。查看SDK中的attrs.xml文件之一(例如,在platforms\android-17\data\res\values下)以查看声明属性的样式。您可以通过在您的res\values文件夹中添加attrs.xml文件来以相同的方式声明属性。然后,您可以在自己的样式和主题中使用这些属性。

相关问题