我正在做一个计算器。
所以我用数字和函数制作了自己的 Buttons
。
必须计算的表达式在 EditText
中,因为我希望用户也可以在表达式中间添加数字或函数,所以使用 EditText
我有光标
。但是我想在用户单击 EditText
时禁用 Keyboard
。
我发现这个例子对于 Android 2.3
没问题,但是使用 ICS
禁用 Keyboard
和光标。
public class NoImeEditText extends EditText {
public NoImeEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public boolean onCheckIsTextEditor() {
return false;
}
}
然后我在我的 XML
文件中使用这个 NoImeEditText
<com.my.package.NoImeEditText
android:id="@+id/etMy"
....
/>
如何使这个 EditText 与 ICS 兼容??? 谢谢。
最佳答案
以下代码适用于 API >= 11 和 API < 11。光标仍然可用。
/**
* Disable soft keyboard from appearing, use in conjunction with android:windowSoftInputMode="stateAlwaysHidden|adjustNothing"
* @param editText
*/
public static void disableSoftInputFromAppearing(EditText editText) {
if (Build.VERSION.SDK_INT >= 11) {
editText.setRawInputType(InputType.TYPE_CLASS_TEXT);
editText.setTextIsSelectable(true);
} else {
editText.setRawInputType(InputType.TYPE_NULL);
editText.setFocusable(true);
}
}
关于android - 在 EditText 上禁用键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10636635/