0
這是我第一次嘗試使用AmbilWarna(Android Color Picker),所以請耐心等待。AmbilWarna - 偏好設置 - 設置顏色
我想使用首選項來爲我的textview設置顏色。這裏是我做了什麼:
將Settings.xml
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto" >
<PreferenceCategory android:title="@string/prefs_color_heading" />
<yuku.ambilwarna.widget.AmbilWarnaPreference
android:defaultValue="0xff000000"
android:key="display_foreground_color"
android:title="Pick a color for text"
app:supportsAlpha="true" />
<!-- -->
<yuku.ambilwarna.widget.AmbilWarnaPreference
android:defaultValue="0xfffff380"
android:key="display_background_color"
android:title="Pick a color for background"
app:supportsAlpha="true" />
</PreferenceScreen>
SettingsFragment:
public class SettingsFragment extends PreferenceFragment implements
OnPreferenceClickListener {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRetainInstance(true);
addPreferencesFromResource(R.xml.settings);
findPreference(Const.Prefs.DISPLAY_FOREGROUND_COLOR)
.setOnPreferenceClickListener(this);
findPreference(Const.Prefs.DISPLAY_BACKGROUND_COLOR)
.setOnPreferenceClickListener(this);
}
@Override
public boolean onPreferenceClick(Preference preference) {
if (preference.getKey().equals(Const.Prefs.DISPLAY_FOREGROUND_COLOR)) {
return true;
} else if (preference.getKey().equals(
Const.Prefs.DISPLAY_BACKGROUND_COLOR)) {
return true;
}
return false;
}
}
當我在首選項點擊,例如 「選擇文本顏色」,我獲取顏色選擇器對話框以從中選擇顏色。我選擇顏色,顏色以「int」形式返回。現在我的問題是,我不明白如何將此返回的int值設置爲我的textview。
這裏是INT從日誌返回:
09-26 11:50:14.440: D/AVCP(24815): Foreground Color: -5954010
如何設置這個中斷我的TextView?
我不知道爲什麼它downvoted,但我猜,不知道如何閱讀返回的int是不是一種罪過。無論如何,看看如何設置它的下面的答案。直截了當! – 2014-09-26 06:44:42