11

Android için bir web uygulaması geliştirmek için phonegap kullanıyorum ve HTML'de kendi tuş takımımı kullanacağım için, sistemin sistem klavyesini devre dışı bırakmam gerekiyor. Kullanıcı herhangi bir metin giriş alanına tıkladığında gösteriliyor. Okunan giriş alanını veya onblur() numarasını kullanmak istemiyorum çünkü imleci metin dosyasına yerleştirmek istiyorum, böylece kullanıcı girdiler girerken imleç konumunu değiştirebilir.Android web görünümünde tüm girdiler için yumuşak klavye nasıl tamamen devre dışı bırakılır

Yani Android'in klavyesini varsayılan olarak tamamen devre dışı bırakmak istiyorum, manifest.xml'a android:windowSoftInputMode="stateAlwaysHidden" eklemeyi denedim, ancak bu çalışmaz.

Ayrıca bir javascript arabirimini here'dan kullanmayı deneyin, ancak Android 2.3.x'de bir javascript-java köprüsü kazasında sorun oluştu (link to issue). Bu yüzden hala iyi bir çözümüm yok. Lütfen yardım et.

Yardımlarınız için şimdiden teşekkür ederiz.

+0

Eğer 'WebView' en' WebViewClient' ve 'WebChromeClient' yapılandırılmış mı? JQuery Mobile'ı kullanan bir proje üzerinde çalıştım ve her ikisinin de düzgün çalışması için her ikisini de yapılandırmamız gerekti. Bir JS olayını engellemek ve bunu yerel koddaki Java mantığına bağlamak zorunda kalabilirsiniz. Buna bakıp seni güncel tutacağım. –

+0

İpuçları için teşekkürler, ancak telefon ağının hem webviewclient hem de webchromeclient'i önceden yapılandırdığını düşünüyorum. Daha fazla bakacağım. teşekkürler – kli

+1

Tamam, aşağıdaki önerilerime bakın.Bunu yapmak için güzel bir yol var gibi görünmüyor, ama sonra tekrar Android'de güzel bir şey yapmak birçok durumda imkansız. –

cevap

1

Tamam, birkaç seçeneğiniz var! Sen kullanarak tamamen klavyeyi devre dışı bırakmak için deneyebilirsiniz: Bu şekilde seçerseniz

  • getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

    • , o otomatik olarak yapılır değilse normale ayarlarını dönmek emin olun. Bunu daha önce kullanmadım ve nasıl davrandığını anlatamadım ama bunu aklımda tut! Bir kullanıcı sadece kendi klavye devre dışı olması uygulamanızı :) kullanırken aldıkları bir metne cevap vermek istemiyorum


  • Sen benzer bir şey kullanabilirsiniz takip eden bağlantı. Çok iyice kazmadım (tl; dr) ama android.inputmethodservice.KeyboardView'dan gelen özel bir görünüm yaratıyor ve bunun yerine kullanıyor.

  • https://stackoverflow.com/a/1947370/1183256
  • İlgili konular