2013-12-06 14 views
1

Я работаю над мягкой клавиатурой.Пользовательские ключевые всплывающие окна программной клавиатуры

Теперь я работаю над всплывающим окном, когда нажата любая клавиша. Для этого я добавил в XML-файле, как,

<Key android:codes="119" android:keyLabel="w" android:popupKeyboard="@xml/popupview" 
    android:popupCharacters="w"/> 

popupview.xml

<?xml version="1.0" encoding="utf-8"?> 
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:background="@drawable/previewbackground" 
    android:textColor="@android:color/white" 
    android:gravity="center" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textSize="32sp" /> 

previewbackground.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <stroke android:width="1dp" android:color="#bbFFFFFF" /> 
    <solid android:color="#FF000000"/> 
</shape> 

Таким образом, после добавления ИНГ выше конфигурации в моем приложении, всплывающее окно выглядит , как показано ниже,

enter image description here

Как мы можем видеть всплывающее окно shown.But проблема,

1) Поп показанный только тогда, когда я долгое время нажимаю на клавишу., который должен отображаться на одном кране.

2) Всплывающее шоу с кнопкой отмены.

3) Всплывающее окно не отклоняется автоматически, я должен нажать кнопку отмены (крест), чтобы вручную закрыть всплывающее окно.

ключа всплывающего окна В основном по умолчанию, как показано на рисунке ниже,

enter image description here

Всплывающие успешно показывают, но мне нужно некоторые настройки в всплывающем окне , но я не могу найти любую помощи настроить всплывающее окно.

Вот почему я попытался с этой конфигурацией. Но проблема в том, что это не работает так, как планировалось.

ответ

0

Вы говорите о всплывающих окнах, которые содержат дополнительные символы или предварительный просмотр ключа (всплывающее окно, которое показывает увеличенную версию нажатой клавиши)?

андроид: popupKeyboard и Android: popupCharacters используются для дополнительных символов, например

<Key android:codes="119" android:keyLabel="w" android:popupKeyboard="@xml/popupview" 
    android:popupCharacters="2\@"/> 

это позволит вам долгое нажатие на «ш» ключ для доступа символы, такие как номер 2 и на @ персонаж. Обратная косая черта - это экранирование специальных символов.

Предварительный просмотр ключа задается setPreviewEnabled (boolean previewEnabled) в классе просмотра клавиатуры. Это может быть либо true, либо false, но я не знаю, можете ли вы его настроить.Посмотрите вокруг в источнике androidIME https://github.com/android/platform_frameworks_base/blob/master/core/java/android/inputmethodservice/KeyboardView.java

0

Вы должны установить значок ключа, т.е. рисует, как показано ниже

<Key 
     android:codes="51" 
     android:keyLabel="3" 
     android:keyIcon="@drawable/happy_icon"/> 

И если вам нужно выбрать длинное нажатие выскакивает, перемену макета XML popup_view TextView клавишных как это

popupview.xml

<Keyboard xmlns:android="http://schemas.android.com/apk/res/android" 
android:keyWidth="10%p" 
android:horizontalGap="0px" 
android:verticalGap="0px" 
android:keyHeight="40dp" > 

Смежные вопросы