我编码禁止系统软键盘。它可以实现效果,但一闪一闪就消失了。我不想这一闪。这是我的代码。
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);
}
}
答案 0 :(得分:3)
在您的清单文件中,您可以将windowSoftInputMode
设置为stateAlwaysHidden
:
<activity
...other attributes
android:windowSoftInputMode="stateAlwaysHidden">
</activity>
答案 1 :(得分:1)
还有另外一种方法 - 不要把注意力集中在你的EditText上。将其设置在背景视图(布局)或其他内容上。这可以通过使用:
来完成setFocusable(true);
requestFocus();
如果不使用Manifest等,这应该可以帮到你。