2025年preference用法for_notification用法

preference用法for_notification用法PreferenceFr 在 Android3 0 之前 设置界面使用 PreferenceAc 在 Android3 0 之后 官方推荐使用 PreferenceFr 对应于碎片化技术 使用 新建 Fragment 新建 GeneralPrefe 继承 PreferenceFr 加载选项配置 xml 文件 public static

PreferenceFragment

在Android3.0之前,设置界面使用PreferenceActivity,在Android3.0之后,官方推荐使用PreferenceFragment,对应于碎片化技术。

使用

新建Fragment

新建GeneralPreferenceFragment 继承PreferenceFragment,加载选项配置xml文件。

public static class GeneralPreferenceFragment extends PreferenceFragment { 

@Override
public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.pref_general);
setHasOptionsMenu(true);
// Bind the summaries of EditText/List/Dialog/Ringtone preferences
// to their values. When their values change, their summaries are
// updated to reflect the new value, per the Android Design
// guidelines.
bindPreferenceSummaryToValue(findPreference("example_text"));
bindPreferenceSummaryToValue(findPreference("example_list"));
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();
if (id == android.R.id.home) {

startActivity(new Intent(getActivity(), SettingsActivity.class));
return true;
}
return super.onOptionsItemSelected(item);
}
}
新建xml文件

在res文件夹目录下新建xml文件夹,在xml文件夹新建pref_general.xml









PreferenceScreen:根标签。

SwitchPreference:开关标签

EditTextPreference:编辑标签

ListPreference:集合标签,多选一。

效果图
分类

使用PreferenceCategory标签进行分类。











使用Header跳转页面

使用preference-headers进行实现,在res/xml文件夹新建pref_headers.xml






在Activity中设置xml

@Override
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public void onBuildHeaders(List
target) {

loadHeadersFromResource(R.xml.pref_headers, target);
}

进行平板适配,这种方式可以适配平板显示。

private static boolean isXLargeTablet(Context context) { 

return (context.getResources().getConfiguration().screenLayout
& Configuration.SCREENLAYOUT_SIZE_MASK) >= Configuration.SCREENLAYOUT_SIZE_XLARGE;
}

平板显示效果


手机显示效果

致谢

感谢观看

编程小号
上一篇 2025-01-25 07:40
下一篇 2025-01-24 17:27

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/hz/116993.html