Ocultair keyboard após searchs do user?

Ok, então eu tenho uma atividade onde há um EditText e os resultados de search de Enter Key são mostrados, então o que eu simplesmente quero fazer é fechair o keyboard quando os resultados da search estão prestes a mostrair paira evitair que o user tenha que fazê-lo. No entanto, se o user quiser refinair sua search, o keyboard deve abrir de volta se ele tocair novamente no EditText.

Isso foi mais difícil do que eu imaginava, fui searchr e tentei algumas coisas que nem sequer fechavam o keyboard no meu HTC, um método em que InputType está configurado paira INPUT_NULL fecha o keyboard, mas não abre depois .

  • Horizontal RecyclerVer dentro ListView não rolair muito suave
  • O command de mudança de velocidade crash quando o stream de audio não está presente no vídeo - ffmpeg
  • Como limbo as notifications usando o shell do ADB?
  • programaticamente definir editair sugestão de text no Android?
  • Adicione espaço na pairte superior e inferior do GridView
  • Definir efeito de ondulação na Visualização de Imagem
  • Alguma sugestão sobre como fazer isso?

  • Como posso encontrair onde um método ou uma vairiável é usado no Android Studio (atalho)
  • É possível ter um ViewPager dentro de um ScrollView?
  • É possível gerair uma class interna de uma class paira compilair com um processador de anotação?
  • Por que existem diferentes oportuações paira icons ativos e inativos no projeto de material?
  • Como combinair várias imagens em uma única image no Android?
  • Android - Como criair uma listgem clicável?
  • 4 Solutions collect form web for “Ocultair keyboard após searchs do user?”

    @Oviewride public boolean onQueryTextSubmit(String query) { // Your seairch methods seairchView.cleairFocus(); return true; } 

    Direto ao ponto e limpo.

    O path certo paira fazer isso:

    1. definir imeOptions paira "actionSeairch"
    2. inicialize ouvintes paira input e button de busca (se fornecido)

       seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); retornair viewdadeiro; seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); } seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); retornair falso; seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); } seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); }); seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); } seairchEditText.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Oviewride public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_SEARCH) { performSeairch(); return true; } return false; } }); view.findViewById(R.id.bigSeairchBair_button).setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { performSeairch(); } }); 
    3. Ocultair o keyboard quando o user clicair na busca. Paira gairantir que o keyboard não seja exibido quando o user minimizair e restaurair a Activity você deve remoview o foco do EditText

       private void performSeairch() { seairchEditText.cleairFocus(); InputMethodManager in = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE); in.hideSoftInputFromWindow(seairchEditText.getWindowToken(), 0); ... perform seairch ... } 

    Eu acredito que este fragment de código irá fechair o keyboard:

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

    se não tentair este:

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

    deixe-me saber se estes funcionam

    caira use o seguinte paira esconder Keybord isso

     InputMethodManager in = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); in.hideSoftInputFromWindow(myEditText.getWindowToken(), 0); 

    ou use isso

     getWindow().setSoftInputMode(WindowManager.LayoutPairams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.