2017-01-04 4 views
0

Je travaille sur une application de clavier Android. Comme vous le savez, l'objet clé peut définir une icône ou une étiquette pour lui-même, maintenant je veux définir un rectangle arrondi redimensionnable pour le bouton du clavier spatial comme This oneComment utiliser un rectangle arrondi redimensionnable comme KeyIcon

Je veux le rendre capable d'être redimensionné quand il fonctionne sur de grands écrans, J'ai ceci dans mon clavier classe de xml:

<Key android:codes="46" android:keyIcon = "@drawable/space_button_drawable.xml"> 

que devrais-je avoir dans mon space_button_drawable.xml?

EDIT 1:

buttonbgselector.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item 
     android:state_pressed="false" 
     android:drawable="@drawable/button" /> 
    <item 
     android:state_pressed="true" 
     android:drawable="@drawable/button2" /> 
</selector> 

keyboard.xml

<?xml version="1.0" encoding="UTF-8"?> 
<android.inputmethodservice.KeyboardView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/keyboard" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:keyBackground="@drawable/buttonbgselector" 
    android:keyPreviewLayout ="@layout/preview" /> 

Répondre

0

space_button_drawable.xml

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <corners 
     android:radius="10dp" /> 
    <solid 
     android:color="#AAA" /> 
</shape> 

utiliser ce dessinable dans votre fond de LinearLayout keyboard.xml

+0

@Maquz Merci pour la réponse, mais j'ai mis une image en arrière-plan de touches, je ne peux pas changer celui-là, Comment puis-je changer l'arrière-plan de Just One Key? – Cyanogen

+0

mmm je ne sais pas ... mais cet article peut vous aider http://tutorials-android.blogspot.cl/2011/06/create-your-own-custom-keyboard-for.html – Maguz

+0

Peut-être que je dois créer un autre buttonbgselector.xml pour la touche d'espace et placez l'espace sélecteur d'arrière-plan de clé à elle, attendez que je vais le tester – Cyanogen