Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 动态更改Custom PreferenceScreen的数据大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用自定义PreferenceScreen,我使用PreferenceActivity为设置页面创建了自定义屏幕.

以下是我的偏好屏幕.

问题:-
我需要动态更改下载数据的徽章.
我按照这个question来实现这个布局.
我已经尝试过该问题的所有答案,但没有单独回答.

有没有其他方法可以找到哪个内部偏好?

的setTings.xml

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://scheR_206_11845@as.android.com/apk/res/android">

<Preference android@R_151_6964@="@String/setTings_user_profile" android:key="user_profile" android:sumMary="@String/setTings_user_profile_desc" android:layout="@layout/setTing_list"></Preference>
<Preference android@R_151_6964@="@String/setTings_download" android:key="download_data" android:sumMary="@String/setTings_download_desc" android:layout="@layout/setTing_list"></Preference>
</PreferenceScreen>

解决方法

您可以子类化Preference,覆盖onBindDialogView() – 只需记住从< Preference ...>更改XMl.包括您的包和类< com.example.app.badgedPreference ...>:
@Override
protected void onBindDialogView(View v) {
    super.onBindDialogView(v);
    Log.v( "onBindDialogView()",v.getClass().getSimplename() );
}

如果您的BadgedPreference有一个处理更改的方法,您可以更轻松地使用它 – 从PreferenceActivity中:

PreferenceScreen myPrefScreen = (PreferenceScreen)getPreferenceScreen();
BadgedPreference bp = (BadgedPreferencE)myPrefScreen.findPreference("download_data");
// Custom method
bp.setBadgeValue(12);

更简单地说,您可以使用标准首选项,只需将其摘要字段设置为“徽章”,然后您可以使用包含的摘要字段设置值:

Preference pref = (PreferencE)myPrefScreen.findPreference("download_data");
pref.setSumMary("12");

如果您有任何疑问,请告诉我.

大佬总结

以上是大佬教程为你收集整理的android – 动态更改Custom PreferenceScreen的数据全部内容,希望文章能够帮你解决android – 动态更改Custom PreferenceScreen的数据所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。