最近在做一個PDA項目,因爲PDA上自帶的有鍵盤,所以要屏蔽掉輸入框EditText在點擊時彈出的軟鍵盤,網上的方法基本上測試了一個遍,最後發現只有這個既能保證屏蔽掉軟鍵盤,又能使光標正常顯示:
/**
* 禁止Edittext彈出軟件盤,光標依然正常顯示。
*/
public void disableShowSoftInput(){
if(android.os.Build.VERSION.SDK_INT <= 10) {
editTest.setInputType(InputType.TYPE_NULL);
}else{
Class<EditText>cls=EditText.class;
Method method;
try{
method = cls.getMethod("setShowSoftInputOnFocus", boolean.class);
method.setAccessible(true);
method.invoke(editTest, false);
}catch(Exception e){
e.printStackTrace();
}
try{
method=cls.getMethod("setSoftInputShownOnFocus",boolean.class);
method.setAccessible(true);
method.invoke(editTest, false);
}catch(Exception e){
e.printStackTrace();
}
}
}
最後在onCreate方法中調用此方法即可!