gpt4 book ai didi

java - Android:如何在首选项上设置 OnPreferenceClickListener?

转载 作者:行者123 更新时间:2023-12-02 09:45:49 25 4
gpt4 key购买 nike

我是 Android 编程新手,首先我想使用 SharedPreferences 制作一个简单的选项菜单演示。我已经创建了基本结构,但我不知道如何将 OnPreferenceClickListener 附加到首选项。尽管如此,我可以使用 onSharedPreferenceChanged 方法,但没有其他事件监听器。 (再说一遍,我是初学者,所以我不知道为什么会这样。)

我阅读了有关创建菜单步骤的文档:https://developer.android.com/guide/topics/ui/settings/customize-your-settings#java

我在这里还看到了一个问题:Preference Activity on Preference Click Listener

我已经尝试了一些解决方案,但它们根本不起作用。 (我无法实现 OnPreferenceClickListener,所以这可能是主要原因,但我不知道为什么)

如您所见,我在 PreferenceCategory 中创建了一个 CheckBoxPreference 和一个 Preference elem。 (这位于/res/xml/settings_pref.xml 中)

<PreferenceCategory
android:key="category_basic"
android:title="Basic settings">
<CheckBoxPreference
android:defaultValue="true"
android:key="my_checkbox"
android:summaryOff="Off"
android:summaryOn="On"
android:title="@string/my_checkbox"
/>
<Preference
android:key="my_preference"
android:title="@string/my_preference"
/>
</PreferenceCategory>

此方法检查 CheckBoxPreference 的状态(选中/未选中)(这是在/java/MainActivity.java中)

@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { // called when I change the state of the CheckBoxPreference
if (key.equals("my_checkbox")) {
// some interesting stuff
}
}

但我的目标是检测用户是否单击了首选项并执行某些操作(例如打开对话框)

onClickPreference.setOnPreferenceClickListener(preference -> {
// do something
return true;
});

当我尝试创建点击监听器时,收到此错误消息:无法解析符号“onClickPreference”

最佳答案

尝试这段代码希望它能帮助你

findPreference("my_preference").setOnPreferenceClickListener(preference -> {
// do something
return true;
});

关于java - Android:如何在首选项上设置 OnPreferenceClickListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56666176/

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