2012-03-06 7 views
0

私はシステムのソフトキーボードを禁止するコードです。それはeffctを達成することができますが、それは1つのフラッシュの後に消えます。私はこのフラッシュが欲しくない。これは私のコードです。システムのソフトキーボードを禁止するにはどうすればいいですか?

<activity 
    ...other attributes 
    android:windowSoftInputMode="stateAlwaysHidden"> 
</activity> 
+0

で作業することなく、あなたのためのトリックを行う必要があります。これは、使用して行うことができますか? – JoxTraex

答えて

1

別の方法があります - あなたのEditTextにフォーカスを置かないでください:あなたのマニフェストファイルで

public class MainActivity extends Activity { 

private EditText mEditText; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    mEditText = (EditText) findViewById(R.id.test_et); 
    mEditText.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
       hideSoftInputMode((EditText)v); 
     } 
    }); 

} 

private void hideSoftInputMode(EditText editText) { 
    ((InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE)) 
      .hideSoftInputFromWindow(editText.getWindowToken(), 
        InputMethodManager.HIDE_NOT_ALWAYS); 
} 

}

3

は、あなたがwindowSoftInputModestateAlwaysHiddenに設定することができます。それをバックグラウンドでの表示(レイアウト)または何かに設定します。

setFocusable(true); 
requestFocus(); 

をこれは、あなたが何を求めているマニフェストなど

関連する問題