android 首选项框架,Android:创建自定义首选项

1ae835dc0f98f7d62e68ae25e2449387.png

婷婷同学_

这就是我使用支持库的方法preference-v7。扩展 Preference和覆盖onBindViewHolder()。此方法使您可以通过ViewHolder对象获取对首选项视图的引用。使用setWidgetLayoutResource()或setLayoutResource()在构造函数中膨胀自定义视图。禁用整个首选项视图的默认单击行为,并且仅允许单击内部的自定义视图。layout / preference_theme.xml                PreferenceTheme.java(自定义Preference类)import android.support.v7.preference.Preference;import android.support.v7.preference.PreferenceViewHolder;public class PreferenceTheme extends Preference {    public PreferenceTheme(Context context, AttributeSet attrs) {        this(context, attrs, 0);    }    public PreferenceTheme(Context context, AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);        setWidgetLayoutResource(R.layout.preference_theme);    }    @Override    public void onBindViewHolder(PreferenceViewHolder holder) {        super.onBindViewHolder(holder);        holder.itemView.setClickable(false); // disable parent click        View button = holder.findViewById(R.id.theme_dark);        button.setClickable(true); // enable custom view click        button.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                // persist your value here            }        });        // the rest of the click binding    }}preferences.xml                    ...   


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部