2012-11-28 122 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文件來以相同的方式聲明屬性。然後,您可以在自己的樣式和主題中使用這些屬性。

相關問題