2012-05-07 22 views
10

Durumuna bağlı olarak sayısal ve/veya alfabetik girişleri işlemek gereken bir EditText var. Kullanıcı, bazı durumlarda herhangi bir girdi türü girebilir. Sadece "Telefon" klavyesini çalıştıran setInputType (InputType.TYPE_CLASS_NUMBER);'u kullanarak açabildim, ancak kullanıcının QWERTY klavyesine geri dönmesine izin vermiyor. Girişin çoğu gerçekten sayısal olduğundan, kullanıcıya çoğu zaman? 123 klavye sunmak istiyorum. Sadece birkaç kez QWERTY klavyesine geri dönmeleri gerekiyor."? 123" Android klavyesi nasıl açılır

Alfabetik giriş için ekran QWERTY klavyesini nasıl açabilirim ve sonra sayısal olarak "? 123" klavyesini açabilirim? Sadece kullanıcı için bir adım kaydetmek istiyorum, böylece her seferinde QWERTY klavyede 123 tuşuna basmak zorunda kalmıyorlar.

Güncelleştirme: Bu, görünür olmasını istediğiniz klavyedir. Nedeni, kullanıcının Alfabetik giriş ve Sayısal giriş arasında kolayca geçiş yapmasını istiyorum. QWERTY klavyeye "sayı tuşlarından" geçiş yapmanın hiçbir yolu yoktur. Uygulamamda, girdinin% 90'ı için sayısal giriş gerekiyor, bu yüzden kolaylık sağlamak için onu açmak istiyorum. Başka bir deyişle, daha doğrusu zamanın sayısal klavyeye% 90 geçmek zorunda kalmak yerine, sadece (Gingerbread Petek ve sonraki sürümlerinde enter image description here

çağrı input.setRawInputType(Configuration.KEYBOARD_QWERTY); için işin farklı zaman QWERTY% 10 geçmek gerekir sayı tuşlarını getirir). Gingerbread 2.2.3'de istediğim gibi çalışıyor. Honeycomb ve 2.3.7 klavye screengrabs referans için aşağıdadır. Neden bu kadar farklı olduklarını bilmiyorum. Gingerbread 2.3.7 keyboard for Configuration.KEYBOARD_QWERTY

+0

olası yinelenen [? Ben sayısal girişini zorlamadan EditText üzerinde sayısal klavyeye varsayılan nasıl] (http://stackoverflow.com/questions/6153796/ nasıl-i-varsayılan-sayısal-klavye-on-edittext-zorlama-sayısal-giriş) –

+0

Teşekkürler, ama bu yazı, sayı tuşlarıyla başa çıkmak gibi görünüyor. "... serbest metin girmenize izin veriyor" diyen oldukça yüksek bir cevap var. ama bunu nerede yaptığını anlamıyorum. Bunun için tuş takımında düğme yok. Lütfen soruma ilişkin güncellemeye bakın. Umarım açıklığa kavuşur. – wufoo

+0

Birçok telefonun farklı bir klavyeye sahip olacağını unutmayın. Örneğin, Samsung telefonlarında varsayılan olarak Swype vardır veya klavyeleri piyasadan indirebilirsiniz. – Jonas

cevap

0

Honeycomb 3.2 keyboard for Configuration.KEYBOARD_QWERTY

Bu post sorunuza yanıt inanıyoruz. Kısacası eklenti olarak

bu kodu:

editText.setRawInputType(Configuration.KEYBOARD_QWERTY); 
+2

Teşekkürler bunu denedim. Sadece 2.2.3'te istediğimi yapıyor gibi görünüyor. 3.2 ve 2.3.7'de "123" klavyesini değil "sayı tuşlarını" getirir. Hmm .. – wufoo

İlgili konular