2011-09-16 11 views
5

Uygulamamın aynı anda iki giriş kaynağının aktif olması gerekiyor: Bir barkod tarayıcı ve yazılım klavyesi. Mavi dişli bir tarayıcıyı eşleştirdiğimde, fiziksel bir klavye gibi davranılıyor. Bu nedenle, bu cihaz bağlandığında, yumuşak klavye görüntülenmiyor (yumuşak klavye devre dışıdır).Hem Fiziksel Klavye hem de Yumuşak Klavye'nin aynı anda aktif olması mümkün mü?

Hem Fiziksel Klavye hem de Yumuşak Klavye'nin aynı anda aktif olması mümkün mü? Değilse, sorunu çözmek için en iyi yaklaşım hangisidir? Tuşa basılan olayları silen özel bir Görünüm uygulamak zorunda mıyım? Piyasada bunu yapan herhangi bir klavye uygulaması var mı?

Fiziksel Klavyeyi nasıl açıp kapatabilirim? Bu geçiş düğmesi ayarı 'Fiziksel Klavye kullan' (Ben burada bu ayarın ekran bulundu.

O Fiziksel Klavye ve aynı anda etkin Yumuşak klavye ikisinin gerçekleşmesi mümkün değildir

enter image description here

cevap

1

Öyle InputMethodService fonksiyonu onEvaluateInputViewShown yürütür. Eğer belgelere here kontrol edebilirsiniz. Yani

/** 
* Override this to control when the soft input area should be shown to 
* the user. The default implementation only shows the input view when 
* there is no hard keyboard or the keyboard is hidden. If you change what 
* this returns, you will need to call {@link #updateInputViewShown()} 
* yourself whenever the returned value may have changed to have it 
* re-evaluated and applied. 
*/ 
public boolean onEvaluateInputViewShown() { 

bunu Fiziksel ve SoftKeyboard ikisi de aynı anda etkin olmak zorunda mümkün değildir onEvaluateInputViewShown sen overide olabilir burada kendi IME uyguladıklarını sürece

Son sorunuzla ilgili olarak emin değilim ama hardKeyboard'u programsal olarak gizlemenin bir yolu olmadığını düşünüyorum. Çözüme sahip olmasa da, this question

'u kontrol etmeniz gerekir.
İlgili konular