如何在扩展的DialogPreference中设置自定义样式?
public class AboutDialog extends DialogPreference {
public AboutDialog(Context oContext, AttributeSet attrs)
{
super(oContext,attrs);
//there is no such a thing like setBackground(int res_id)...
}
}
和xml
<com.pak1.pak.About
android:key="key" android:title="@string/preferences_about"
android:dialogTitle="@string/preferences_about_title"
android:dialogIcon="@drawable/app_icon" android:negativeButtonText="@null"
android:positiveButtonText="@string/ok" />
或者例如是否可以更改按钮的属性?
我有一个ok按钮,例如我想改变这个'ok'按钮的颜色,我该怎么做?
答案 0 :(得分:5)
覆盖onCreateDialogView,并返回布局。
例如,参见Matthew Wiggins创建自定义DialogPreference的示例。
http://android.hlidskialf.com/blog/code/android-seekbar-preference
或者在stackoverflow
答案 1 :(得分:0)
要设置DialogPreference的背景,您还可以使用方法
DialogPreference.setDialogLayoutResource(R.layout.layout1);
和简单的颜色资源,通常在res/values/colors.xml
内指定:
<color name="red">#ffff0000</color>
通过android:background="@color/red"
中的res/layout/layout1.xml
参阅此资源。
(More info about setting a background)