gpt4 book ai didi

java - 为什么显示 "The method getPreferenceOnScreen is depriciated"?

转载 作者:行者123 更新时间:2023-12-02 07:06:44 25 4
gpt4 key购买 nike

我正在开发一个简单的 Android 应用程序。我已经通过下面给出的方法设置了首选项-

public void updateSummaries() {
getPreferenceScreen().findPreference(PREF_SIP_DOMAIN).setSummary(settings.getString(PREF_SIP_DOMAIN, DEFAULT_SIP_DOMAIN));
getPreferenceScreen().findPreference(PREF_SIP_PROXY).setSummary(settings.getString(PREF_SIP_PROXY, DEFAULT_SIP_PROXY));
getPreferenceScreen().findPreference(PREF_SIP_PROXY_PORT).setSummary(settings.getString(PREF_SIP_PROXY_PORT, DEFAULT_SIP_PROXY_PORT));
getPreferenceScreen().findPreference(PREF_STUN_UDP).setSummary(settings.getString(PREF_STUN_UDP, DEFAULT_STUN_UDP));
getPreferenceScreen().findPreference(PREF_STUN_UDP_PORT).setSummary(settings.getString(PREF_STUN_UDP_PORT, DEFAULT_STUN_UDP_PORT));
getPreferenceScreen().findPreference(PREF_STUN_TCP).setSummary(settings.getString(PREF_STUN_TCP, DEFAULT_STUN_TCP));
getPreferenceScreen().findPreference(PREF_STUN_TCP_PORT).setSummary(settings.getString(PREF_STUN_TCP_PORT, DEFAULT_STUN_TCP_PORT));
getPreferenceScreen().findPreference(PREF_TURN_UDP).setSummary(settings.getString(PREF_TURN_UDP, DEFAULT_TURN_UDP));
getPreferenceScreen().findPreference(PREF_TURN_UDP_PORT).setSummary(settings.getString(PREF_TURN_UDP_PORT, DEFAULT_TURN_UDP_PORT));
getPreferenceScreen().findPreference(PREF_TURN_TCP).setSummary(settings.getString(PREF_TURN_TCP, DEFAULT_TURN_TCP));
getPreferenceScreen().findPreference(PREF_TURN_TCP_PORT).setSummary(settings.getString(PREF_TURN_TCP_PORT, DEFAULT_TURN_TCP_PORT));
getPreferenceScreen().findPreference(PREF_TCP_MODE).setSummary(settings.getString(PREF_TCP_MODE, DEFAULT_TCP_MODE));
getPreferenceScreen().findPreference(PREF_AFE_MODE).setSummary(settings.getString(PREF_AFE_MODE, DEFAULT_AFE_MODE));
getPreferenceScreen().findPreference(PREF_BWM_MODE).setSummary(settings.getString(PREF_BWM_MODE, DEFAULT_BWM_MODE));
getPreferenceScreen().findPreference(PREF_HTTP_PROXY).setSummary(settings.getString(PREF_HTTP_PROXY, DEFAULT_HTTP_PROXY));
getPreferenceScreen().findPreference(PREF_HTTP_PROXY_PORT).setSummary(settings.getString(PREF_HTTP_PROXY_PORT, DEFAULT_HTTP_PROXY_PORT));
getPreferenceScreen().findPreference(PREF_HTTP_DOMAIN).setSummary(settings.getString(PREF_HTTP_DOMAIN, DEFAULT_HTTP_DOMAIN));
getPreferenceScreen().findPreference(PREF_TURN_USERNAME).setSummary(settings.getString(PREF_TURN_USERNAME, DEFAULT_TURN_USERNAME));
getPreferenceScreen().findPreference(PREF_TURN_PASSWORD).setSummary(settings.getString(PREF_TURN_PASSWORD, DEFAULT_TURN_PASSWORD));
getPreferenceScreen().findPreference(PREF_HTTP_PROXY_USERNAME).setSummary(settings.getString(PREF_HTTP_PROXY_USERNAME, DEFAULT_HTTP_PROXY_USERNAME));
getPreferenceScreen().findPreference(PREF_HTTP_PROXY_PASSWORD).setSummary(settings.getString(PREF_HTTP_PROXY_PASSWORD, DEFAULT_HTTP_PROXY_PASSWORD));
getPreferenceScreen().findPreference(PREF_TRANSPORT_MODE).setSummary(settings.getString(PREF_TRANSPORT_MODE, DEFAULT_TRANSPORT_MODE));
getPreferenceScreen().findPreference(PREF_AUTO_ANSWER).setSummary(settings.getString(PREF_AUTO_ANSWER, DEFAULT_AUTO_ANSWER));
}

但这里会显示警告消息,有时我在设置页面上没有设置任何首选项。谁能告诉我这个问题的根本原因是什么?

最佳答案

有人使用 @Deprecated 注释弃用了该方法,因为他们认为不应再使用它。您应该找到声明该方法的位置,并阅读 @deprecated 下的文档(如果提供),或者找到您组织中管理该方法的人员,以了解他们建议的替代方案。

编辑:抱歉,我没有意识到这是 Android 代码 fragment 。请参阅android - getPreferenceScreen另一位用户提出的问题。他们建议您应该使用 getPreferenceManager() 来代替。

像这样:

getPreferenceManager().findPreference("keep").setEnabled(true);

关于java - 为什么显示 "The method getPreferenceOnScreen is depriciated"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16008368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com