禁用Android键盘的按钮

时间:2012-02-14 09:42:46

标签: android validation

我正在尝试禁用android中键盘的某些键。例如,打开数字小键盘时。我想禁用+, - 等按钮。 我怎么能这样做。

此致

3 个答案:

答案 0 :(得分:0)

您需要将编辑文本定义为xml中的NoImeEditText(这是您的自定义edittext),然后NoImeEditText et =(NoImeEditText)findViewById(R.id.itsId)应该有效。

public class NoImeEditText extends EditText {
  public EditTextEx(Context context, AttributeSet attrs) { 
  super(context, attrs);     
  }      
  @Override      
  public boolean onCheckIsTextEditor() {   
  return false;     
  }        
  } 

答案 1 :(得分:0)

使用此检测+键,如果按,然后从编辑文本中删除+,如此

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    if(keyCode==70){
        //do nothing ///
        Log.i("ss","dd");
        String str=edit.getText().toString().replace("+","");
        edit.setText(str);
    }
    return super.onKeyUp(keyCode, event);
}

答案 2 :(得分:0)

您无法从键盘上禁用+或 - 键。但是,您可以限制用户输入该密钥。

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    if(keyCode==70){
        //do nothing ///
        Log.i("ss","dd");
        String str=edit.getText().toString().replace("+","");
        edit.setText(str);
    }
    return super.onKeyUp(keyCode, event);
}