0

Je mettre en place un écran de numérotation et je veux faire le clavier comme une vue personnalisée (pour que je puisse l'intégrer directement dans un autre interface utilisateur si nécessaire)Android définir une vue de groupe personnalisé

J'ai défini une layout xml file keypad.xml donc je suis capable de montrer le clavier au moins dans mon écran dialer. Je me demande s'il est possible de faire programme comme une classe KeypadView (en utilisant la mise en page keypad.xml) de sorte que lorsque j'ai besoin de la même mise en page à nouveau, je pourrais l'intégrer en appelant

<com.example.KeypadView ..></com.example.KeypadView> 

[!!! revendication ] J'ai lu le tutoriel android sur creating custom views. Il utilise des dessins personnalisés .. Je ne veux pas que ce soit si compliqué ... J'ai déjà un modèle défini dans keypad.xml Je veux utiliser cette disposition dans mon KeypadView.java et aussi, je veux détecter l'événement onTapKey à l'intérieur de la classe KeypadView et utiliser une interface d'écoute pour passer l'événement à tous ceux qui veulent manipuler ..

Quelque chose comme this exmaple

+0

Utile pour u http://www.java2s.com/Code/Android/User-Event/Exampleofwritinganinputmethodforasoftkeyboard.htm –

+0

Avez-vous même essayer de lire la documentation Android? https://developer.android.com/training/custom-views/index.html – RichieHH

+0

@RichieHH merci de me le rappeler .. J'ai lu! mais toujours pas beaucoup d'idée sur la mise en œuvre de mon besoin .... – xialin

Répondre

1

Vous pouvez le faire en utilisant uniquement xml dans Android. D'abord vous créez votre disposition personnalisée dites keypad.xml.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width=”match_parent” 
android:layout_height=”match_parent” 

........

Maintenant, vous pouvez utiliser au-dessus de vue personnalisée partout où vous voulez en utilisant notamment des mots clés. Par exemple, dans votre dialer.xml vous pouvez faire:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width=”match_parent” 
android:layout_height=”match_parent”> 

<include layout="@layout/keypad"/> 

<TextView android:layout_width=”match_parent” 
      android:layout_height="wrap_content" 
      android:text="@string/your_no" 
      android:padding="10dp" /> 

... 

+0

merci pour votre réponse. Je l'ai surpassé, mais ce n'est pas vraiment ce que je cherche. Ma faute, mais je ne sais pas comment le décrire clairement – xialin

+0

Je pense que vous devriez poster une partie de votre code aussi, de sorte que vous puissiez être plus précis dans quel est votre problème réel. – Crawler

+0

vous avez raison. J'ai trouvé des indices de ce post http://stackoverflow.com/questions/8554181/custom-tablelayout-with-multiple-textviews-in-rows mettra à jour ma solution plus tard – xialin

Questions connexes