2014-11-13 16 views
26

Metni Düzenle bir Parçası var. Metni Düzenle düğmesine basıldığında, klavye gösteriliyor. Üst köşedeki Kaydet düğmesine basıldığında, uygulama önceki parçaya geri döner, ancak klavye devam eder.Bir parçadan diğerine geçerken klavyeyi gizleyin

Önceki parçaya giderken klavyenin gizlenmesini istiyorum.

Lütfen bu çözümü denediğimi unutmayın: Close/hide the Android Soft Keyboard.

InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); 
imm.hideSoftInputFromWindow(myView.getWindowToken(), 0); 

Bunu her iki parçada da onCreate yönteminde kullanmayı denedim. maalesef bunlardan

android:windowSoftInputMode="stateAlwaysHidden" 

Yok çalıştı:

Ben de düzeninde yumuşak klavye saklamaya çalıştı.

Bazı resimler gönderirdim, ancak henüz yeterince itibarım yok. Herhangi bir yapıcı yardım ve görüş için minnettarım ve "Bir bilge adam, aptal bir sorudan, bir aptalın akıllıca bir cevaptan öğrenebileceğinden daha fazlasını öğrenebilir." :)

Selamlar, Alexandra

+0

myView nedir? – Carnal

+0

Bu sıradan bir Düzenleme Metnidir. Tıpkı çözümdeki gibi. –

+0

getView() yöntemini kullanmayı deneyin (Fragment yöntemi) – Carnal

cevap

76

klavyeyi gizler kod yerleştirin senin "butonuna save" dinleyici tıklatın ve klavyeyi gizlemek için bu yöntemi kullanın: gizlemek için

+1

Bu kodu herkese açık bir sınıfa koyun ve istediğiniz parçadan bir satır ile çağırabilirsiniz. İyi şeyler - bu yaş için arıyorum – DaveSav

+0

en iyi cevap (y) –

2

En kolay yolu fragmanı veya Aktivite klavye

Soluton: 1

//hide keyboard 
public static void hideKeyboard(Context ctx) { 
    InputMethodManager inputManager = (InputMethodManager) ctx 
      .getSystemService(Context.INPUT_METHOD_SERVICE); 

    // check if no view has focus: 
    View v = ((Activity) ctx).getCurrentFocus(); 
    if (v == null) 
     return; 

    inputManager.hideSoftInputFromWindow(v.getWindowToken(), 0); 
} 

özüm: 2

InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); 
    inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0); 
İlgili konular