2
我有一個EditText數組,我想禁用每次點擊它們時出現的標準鍵盤Android。禁用EditText數組上的Android鍵盤
這些都是我使用的部分代碼:
InputMethodManager imm = (InputMethodManager)getSystemService(
Context.INPUT_METHOD_SERVICE);
for (i=0;i<dim*dim;i++){
imm.hideSoftInputFromWindow(value[i].getWindowToken(), 0);
value[i].setOnTouchListener(this);
value[i].setOnClickListener(this);
value[i].setOnFocusChangeListener(this);
}
編輯:
我創建了一個新的類,用幾行代碼:
import android.content.Context;
import android.util.AttributeSet;
import android.widget.EditText;
public class KeyboardControlEditText extends EditText {
private boolean mShowKeyboard = false;
public void setShowKeyboard(boolean value) {
mShowKeyboard = value;
}
// This constructor has to be overriden
public KeyboardControlEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
// Now tell the VM whether or not we are a text editor
@Override
public boolean onCheckIsTextEditor() {
return mShowKeyboard;
}
}
,並在我的主類在OnCreate上:
for (i=0;i<dim*dim;i++){
((KeyboardControlEditText) value[i]).setShowKeyboard(false);
value[i].setOnTouchListener(this);
value[i].setOnClickListener(this);
}
也許我做錯了什麼,但我仍然看到在Android的鍵盤 – David
你已經改變了你的XML文件,以反映新的類? – Eric
我在Manifest中添加了新的類。我用我現在在主類中使用的代碼行編輯我的帖子,嘗試使用他的建議。 – David