【问题标题】:Android custom keyboard orientation symbol/qwertyAndroid自定义键盘方向符号/qwerty
【发布时间】:2015-07-17 07:26:16
【问题描述】:

我正在使用 android sample softkeyboard 作为学习项目。我添加了第二种语言,到目前为止一切正常。然而,我发现一个问题很难解决。在将设备的方向从纵向更改为横向时,我希望保留任何键盘布局。逻辑是:

 // on orientation or configuration change
if (currentKeyboard==mQwertyKeyboard) {
          // keep as is
            mCurKeyboard = mQwertyKeyboard ;   
 }else if (currentKeyboard == mSymbolsKeyboard) {
          // keep as is
            mCurKeyboard = mSymbolsKeyboard;
}else if (currentKeyboard == mSymbolsShiftedKeyboard) {
          // keep as is
            mCurKeyboard = mSymbolsShiftedKeyboard ; 
 }

我已尝试在以下位置实现:

@Override
public void onConfigurationChanged(Configuration newConfig) {...}

在 Softkeyboard.java 中,但没有结果。 提前致谢。

【问题讨论】:

  • 您在这里找到问题的答案了吗?如果你有什么,请张贴。谢谢。

标签: android android-softkeyboard sample


【解决方案1】:

我遇到了同样的问题 - 我通过使用 onConfigurationChanged(Configuration newConfig) 和一些辅助编码解决了它

如果它被删除,我的代码会改变方向,但我的键盘不会调整大小。由于我喜欢父级的大小调整功能,我制作了一个包含所有键盘的数组,并且在更改方向后,我将更新数组,以便键盘数组具有正确的大小。

@Override
public void onConfigurationChanged(Configuration newConfig) {

    int currentKeyboard = 0;
    boolean isShifted = kv.isShifted();
    for (int i = 0; i < keyboard.length; i++) {
        if(kv.getKeyboard().equals(keyboard[i])){
            currentKeyboard = i;
            break;
        }
    }

    super.onConfigurationChanged(newConfig);

    initializeKeyboardArray();
    setKeyboard(keyboard[currentKeyboard]);
    kv.setShifted(isShifted);

}

private void initializeKeyboardArray(){
    keyboard = new Keyboard[7];
    keyboard[ARABIC] = arabic;
    keyboard[ARABIC_SHIFT] = arabicShift;
    keyboard[ARABIC_SYMBOLS] = arabicSymbols;
    keyboard[ARABIC_SYMBOLS_SHIFT] = arabicSymbolsShift;
    keyboard[QWERTY] = qwerty;
    keyboard[QWERTY_SYMBOLS] = qwertySymbols;
    keyboard[QWERTY_SYMBOLS_SHIFT] = qwertySymbolsShift;
}

【讨论】:

    猜你喜欢
    • 2015-02-08
    • 2016-06-08
    • 2019-05-26
    • 2013-07-04
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多