我正在构建一个软键盘,我无法弄清楚如何正确构建一个显示在系统设置中的首选项屏幕。
我在xml(preferences.xml)中构建了元素屏幕,我已经填充了选项(只是一个简单的ListPreference来选择所需的语言)。这一切都很好。
启动键盘时(查看onCreate InputView()...)我已经设置了将默认首选项写入共享首选项:
PreferenceManager.setDefaultValues(getBaseContext(), R.xml.preferences, true);
SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
我还设置了一个共享首选项侦听器,以确定是否对首选项进行了任何更改,以便我可以更新字典:
SharedPreferences.OnSharedPreferenceChangeListener listener = new SharedPreferences.OnSharedPreferenceChangeListener() {
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
// do stuff
}
};
SP.registerOnSharedPreferenceChangeListener(listener);
所有这一切似乎都很好。但我不能为我的生活弄清楚如何让首选项屏幕显示在系统设置(设置 - >语言和输入 - >键盘和输入首选项),所以我实际上可以改变任何东西。所有其他键盘都有一个插槽,可以打开到可以调整设置的首选项屏幕。我的键盘名称有自己的插槽,但如果我触摸它没有任何反应。如何通过此处访问我的首选项屏幕?