У меня есть пользовательская клавиатура, предназначенная для игры в текстовую игру.Проблема в том, что когда я переключаю свою клавиатуру с основной (клавиатура) на другую (клавиатуру путешествия), белый экран закрывает немного зелья в нижней части клавиатуры и остается до перезагрузки клавиатуры.Нет проблем, если я не переключусь на свою travelkeyboard . Проблема обнаружена только в устройстве Android OREO LG Stylo 4.
моя основная клавиатура xml: keyboard = new Keyboard(this, R.xml.drpgkey);
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
android:keyHeight="9%p"
android:keyWidth="10%p"
android:verticalGap="0.55%p">
<Row>
<Key
android:codes="888"
android:keyEdgeFlags="left"
android:keyHeight="27%p"
android:keyLabel="ADV"
android:keyWidth="40%p" />
<Key
android:codes="907"
android:horizontalGap="1%p"
android:keyLabel="MINE"
android:keyWidth="29%p" />
<Key
android:codes="905"
android:horizontalGap="1%p"
android:keyEdgeFlags="right"
android:keyLabel="CHOP"
android:keyWidth="29%p" />
</Row>
<Row>
<Key
android:codes="906"
android:horizontalGap="41%p"
android:keyLabel="FORAGE"
android:keyWidth="29%p" />
<Key
android:codes="908"
android:horizontalGap="1%p"
android:keyEdgeFlags="right"
android:keyLabel="FISH"
android:keyWidth="29%p" />
</Row>
<Row
android:keyHeight="8%p"
android:keyboardMode="@integer/default_keys">
<Key
android:codes="201"
android:horizontalGap="41%p"
android:keyLabel="O.o"
android:keyWidth="11%p"
android:popupKeyboard="@xml/inv" />
<Key
android:codes="334"
android:horizontalGap="1%p"
android:keyLabel="Undefined"
android:keyWidth="35%p"
android:popupKeyboard="@xml/market" />
<Key
android:codes="202"
android:horizontalGap="1%p"
android:keyEdgeFlags="right"
android:keyLabel="o.O"
android:keyWidth="11%p"
android:popupKeyboard="@xml/ginv" />
</Row>
<Row
android:keyHeight="8%p"
android:keyboardMode="@integer/custom_keys">
<Key
android:codes="201"
android:horizontalGap="41%p"
android:keyLabel="O_o"
android:keyWidth="11%p"
android:popupKeyboard="@xml/customkeys_left" />
<Key
android:codes="334"
android:horizontalGap="1%p"
android:keyLabel="Undefined"
android:keyWidth="35%p"
android:popupKeyboard="@xml/market" />
<Key
android:codes="202"
android:horizontalGap="1%p"
android:keyEdgeFlags="right"
android:keyLabel="o_O"
android:keyWidth="11%p"
android:popupKeyboard="@xml/customkeys_right" />
</Row>
<Row
android:keyHeight="8%p"
android:rowEdgeFlags="bottom">
<Key
android:codes="900"
android:keyEdgeFlags="left"
android:keyLabel="STATS"
android:keyWidth="19.20%p"
android:popupKeyboard="@xml/stats" />
<Key
android:codes="901"
android:keyLabel="PET"
android:horizontalGap="1%p"
android:keyWidth="19.20%p" />
<Key
android:codes="903"
android:keyLabel="HEAL"
android:horizontalGap="1%p"
android:keyWidth="19.20%p" />
<Key
android:codes="904"
android:keyLabel="PHEAL"
android:horizontalGap="1%p"
android:keyWidth="19.20%p" />
<Key
android:codes="333"
android:keyEdgeFlags="right"
android:keyIcon="@drawable/key_icon"
android:horizontalGap="1%p"
android:keyWidth="19.20%p"
android:popupKeyboard="@xml/optionkey" />
</Row>
my travelkeyboard: travelkeyboard = new Keyboard(this, R.xml.travelkeys);
<Keyboard xmlns:android="http://schemas.android.com/apk/res/android"
android:keyHeight="9%p"
android:horizontalGap="1%p"
android:keyWidth="28%p"
android:verticalGap="0.55%p">
<Row>
<Key
android:codes="701"
android:keyLabel=""
android:keyEdgeFlags="left" />
<Key
android:codes="702"
android:keyLabel="" />
<Key
android:codes="703"
android:keyLabel="" />
<Key
android:codes="335"
android:keyEdgeFlags="right"
android:keyIcon="@drawable/ic_return"
android:keyWidth="13%p" />
</Row>
<Row>
<Key
android:codes="704"
android:keyLabel=""
android:keyEdgeFlags="left" />
<Key
android:codes="700"
android:keyIcon="@drawable/ic_location"
android:popupKeyboard="@xml/tags" />
<Key
android:codes="705"
android:keyLabel="" />
<Key
android:codes="909"
android:keyEdgeFlags="right"
android:keyIcon="@drawable/ic_search"
android:keyWidth="13%p" />
</Row>
<Row>
<Key
android:codes="706"
android:keyLabel=""
android:keyEdgeFlags="left" />
<Key
android:codes="707"
android:keyLabel="" />
<Key
android:codes="708"
android:keyLabel="" />
<Key
android:codes="699"
android:keyEdgeFlags="right"
android:keyIcon="@drawable/ic_map"
android:keyWidth="13%p"
android:popupKeyboard="@xml/runes" />
</Row>
<Row
android:keyHeight="7%p"
android:keyWidth="24.25%p"
android:rowEdgeFlags="bottom">
<Key
android:codes="711"
android:keyEdgeFlags="left"
android:keyIcon="@drawable/ic_notalk"
android:popupKeyboard="@xml/task" />
<Key
android:codes="712"
android:keyIcon="@drawable/ic_notalk" />
<Key
android:codes="713"
android:isRepeatable="true"
android:keyIcon="@drawable/ic_notalk" />
<Key
android:codes="714"
android:keyEdgeFlags="right"
android:keyIcon="@drawable/ic_notalk" />
</Row>
</Keyboard>
И я меняю клавиатуру клавишей (основной код)
case 334:
kv.setKeyboard(travelkeyboard);
break;
case 335:
kv.setKeyboard(keyboard);
break;
Изображения: https://imgur.com/a/2WOHtOp
Обнаружено, что проблема заключается втолько на устройствах LG Stylo 4.