2012-02-14 108 views
1

我想禁用一些键盘的android键盘。例如数字小键盘打开时。我想禁用+, - 等按钮。 我该怎么做。禁用android键盘按钮

问候

+0

做你解决了吗?如果是,那么张贴你的答案以帮助other.And如果你喜欢其中的任何答案,那么请接受 – Sameer 2012-02-18 06:29:44

+0

以及我没:( – 2012-02-20 03:44:51

回答

0

使用该检测+键如果按然后从EditText上删除+这样

@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); 
} 
+0

希望它在我的模拟器上工作//这里+键给出键码70,所以我比较70 – Sameer 2012-02-14 10:06:21

0

您需要定义编辑文本作为XML一个NoImeEditText(这是自定义的EditText),然后NoImeEditText等=(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;  
    }   
    } 
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); 
}