首页 > 解决方案 > 以编程方式更改软键盘中候选视图的颜色

问题描述

我的应用程序中有多种键盘背景颜色,用户可以为键盘背景选择任何颜色。我遇到的问题是当用户选择任何颜色以应用于它正在工作的键盘但候选视图没有改变颜色时,它的颜色与第一个主题相同。当我旋转应用程序屏幕时,候选视图颜色也会发生变化。您能帮我在运行时更改候选视图颜色吗?

标签: androidkeyboardandroid-softkeyboardcustom-keyboardsoft-keyboard

解决方案


mCandidateView.setBackgroundResource(R.color.colorBlack);

@Override public void onStartInputView(EditorInfo attribute, boolean restarting) { super.onStartInputView(attribute, restarting);

    if (modeReceived == MyConstants.Companion.getTHEME_KEYBOARD_MODE_DRAWABLE()) {
        try {
            int drawablePrefs =
                    sharedPreferences.getInt(MyConstants.Companion.getTHEME_KEYBOARD_DRAWABLE(), R.color.colorBlack);
            if (mInputView != null) {
                    mInputView.setBackgroundResource(drawablePrefs);
                     mCandidateView.setBackgroundResource(drawablePrefs);
                }

推荐阅读