android Preference相關樣式修改

2021-09-01 11:10:54 字數 1342 閱讀 7508

首先,preference相關的東西都是以list的形式展現給大家的,所以,修改的樣式一般可以分為2類:1.listitem背景修改。2.listitem具體view修改。我們分別對下面四種情況進行分析。

1.activity繼承自preferenceactivity

1).可以通過getlistview()來獲取listview物件,然後設定listview的相關屬性。如4.0.3的設定應用,首介面是通重載入loadheadersfromresource(r.xml.settings_headers, headers);

2).一般如果自己寫對應adapter的話,listitem的具體view資訊就可以具體進行操作了,位置在adapter的getview函式中。

2.preferencefragment

對於這種形式的很難進行修改,首先找出其載入的layout檔案,一般layout檔案中存在具體的配置資訊,如preferencescreen等,然後可以具體的進行修改。在這個中間是獲取不到getlistview()方法的。

複寫onactivitycreated()方法,在裡邊可以獲得getlistview()物件。

3.preferencescreen

在節點中配置stle屬性,來進行item的具體控制,如style="@style/preference_holo"

此處需要注意@layout/preference_holo的具體配置,最好和系統的保持一致(具體view的id等資訊)

4.preferencecategory

它的修改需要複寫preferencecategory類,一般採用繼承的方法,然後在onbindview中修改標題的樣式,如:

public class spreferencecategory extends preferencecategory

public spreferencecategory(context context, attributeset attrs)

public spreferencecategory(context context, attributeset attrs, int defstyle)

@override

protected void onbindview(view view) }}

總結:1.最好的控制方法是自定義控制項,這樣就可以隨意的控制樣式,得到自己需要的。2.首先找到xml檔案,然後根據xml檔案的內容,再進行修改,如果很難修改,就繼續往framework層延伸,找到相關的內容,然後移植到自己的應用。3.preferencecategory主要負責標題的樣式。其裡邊的子項就是listitem。最好的學習方式是嘗試修改系統的setting應用,裡面包含的preference-headers,header等很有意思。

scrollbar樣式相關

一些 為了整體效果,會調整頁面滾動條的顏色,但是,這個解決方案只有 kde 上的 konqueror 瀏覽器和 windows 上的 internet explorer 5.5 才支援,發在這裡只是供有需要的人採用,因此,使用前要根據自己的使用者群來進行選擇。由於在 xhtml 中 定義在 body...

ScrollBar樣式相關

最好設定listview或者scrollview的margin,這樣顯示效果較好,關於scrollbarstyle insideoverlay 預設值,表示在padding區域內並且覆蓋在view上 insideinset 表示在padding區域內並且插入在view後面 outsideoverla...

布局相關樣式

多欄布局 1.column count屬性 在css3中可以通過,column count屬性來進行多欄布局,這個屬性的含義是將乙個元素中的內容分成多欄進行顯示。寫法 column count 欄目數 相容性寫法 webkit column count 3 moz column count 3 需要...