2017-01-26 5 views
0

Я работаю над вкладкой Android, у которой есть внешняя клавиатура. Поэтому мне нужно удалить всплывающую клавиатуру Android в моем приложении. Я пробовал так много способов сделать это, ничто из этого не работает для меня, потому что мое устройство Api-16.Android hide keyboard

EditText edtView=(EditText)findViewById(R.id.editTextConvertValue); 
edtView.setInputType(0); 

Этот код был работать, но это не не показывает курсор .Я попробовал это,

getWindow().setSoftInputMode(
    WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN 
); 

и

<activity 
    android:name=".MyActivity" 
    android:windowSoftInputMode="stateAlwaysHidden"/> 

ничего работает для меня.

Есть ли другой способ сделать это ??

Скрыть Android softKeyboard поп на Апи 16 Устройство

заранее спасибо !!

+0

это это делается? http://android.stackexchange.com/a/80999/57580 –

+0

Создайте класс ViewUtil.java, чтобы показать или скрыть клавиатуру. Вы можете взглянуть на следующий https://gist.github.com/kristopherjohnson/6023531 –

ответ

1

попробовать этот

edtView.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     if(hasFocus){ 
      edtView.postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
        imm.hideSoftInputFromWindow(edtView.getWindowToken(), 0); 
       } 
      },1); 

     } 
    } 
}); 
+0

Я пробовал, не работает –

+0

ok. поэтому я изменил код. попробуйте, он работает –

+0

etId (R.id.auth_code), что такое 'etId'. Это view.getId –

0

вызов ниже функции всякий раз, когда вы хотите, чтобы скрыть клавиатуру

public static void hideKeyboard(Context context, View mView) { 
    InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE); 
    imm.hideSoftInputFromWindow(mView.getWindowToken(), 0); 
}