example:
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res/com.seedshope.android">
<PreferenceScreen
android:key="wifi_settings"
android:title="@string/wifi_settings"
android:summary="@string/wifi_settings_summary" >
<intent
android:action="android.intent.action.MAIN"
android:targetPackage="com.android.settings"
android:targetClass="com.android.settings.wifi.WifiSettings" />
</PreferenceScreen>
</PreferenceScreen>
如果是個PreferenceGroup 可以通過Intent 連結到建立activity extends PreferenceActivity 在onCreate中
addPreferencesFromResource(R.xml.preference);
setContentView(R.layout.pre_test);
--------------------------------------------------------
android實作為PreferenceScreen設定背景圖檔等
需要使用PreferenceScreen,類似系統中的設定功能,但是需要設定自定義背景,修改PreferenceScreen中的文本的字型顔色等;可以以下做法:
1:在values目錄下建立styles.xml(目錄下無styles.xml),内容如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="perference_set_activity">
<item name="android:windowBackground">@drawable/bg01</item> <!-- 視窗背景 -->
<item name="android:focusable">false</item>
<item name="android:textColor">#ff000000</item> <!-- 字型顔色 -->
<item name="android:colorBackgroundCacheHint">#00000000</item> <!-- 背景緩存色透明,避免拖動全黑 -->
<item name="android:windowNoTitle">false</item> <!-- 是否有标題 -->
</style>
</resources>
2:在manifest.xml中的相應activity中配置,如:
<activity android:name=".MainActivity" android:theme="@style/sys_set_activity"/>
也可以在onCreate(...)中setTheme(R.style.perference_set_activity),但是此方法必須放在super.onCreate(icicle)之前,否則會出現如背景丢失等錯誤。
用法就是如此簡單,關鍵在設定 <item name="android:colorBackgroundCacheHint">#00000000</item> <!-- 背景緩存色透明,避免拖動全黑 -->
-------------------------------------------------------
1、在value檔案夾下建立一個systemset.xml檔案,sytemset.xml内容
<resources>
<style name="sys_set_preacitivity">
<item name="android:windowBackground">@drawable/background</item>
<item name="android:focusable">false</item>
<item name="android:textColor">#ff000000</item>
<item name="android:cacheColorHint">#ffffffff</item>
<item name="android:windowNoTitle">false</item> <!-- 用來設定是否顯示标題 -->
</style>
2、在AndroidManifest.xml調用
<activity android:name="SystemSetAcitivity" android:theme="@style/sys_set_preacitivity"></activity>
4、建立一個xml檔案,在xml下建立一個system_set.xml,内容是
<preferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:title="@string/systemTitle" android:layout="@layout/system_set">
<preferenceCategory android:title="@string/soundTitle">
<CheckBoxPreference android:title="@string/muteTitle"
android:summary="@string/muteSum"></CheckBoxPreference>
<CheckBoxPreference android:title="@string/shockTitle"
android:summary="@string/shockSum"></CheckBoxPreference>
<CheckBoxPreference android:title="@string/soundTitle"
android:summary="@string/soundSum"></CheckBoxPreference>
</PreferenceCategory>
<preferenceCategory android:title="@string/soundTitle">
4、在src下建立一個java檔案
package com.android.perference.acitivity;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceScreen;
public class SystemSetAcitivity extends PreferenceActivity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.system_set);
}
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,
Preference preference)
return super.onPreferenceTreeClick(preferenceScreen, preference);
}
5、運作程式出現拖動黑屏,一直困擾着我,不知道怎麼解決,誰有好的辦法
<ignore_js_op>
拖動某一選項結果: