我使用Android-HomeKey-Locker锁定主页密钥。它有效,但如果家庭被锁定。 Android键盘永远不会打开,如果我在打开键盘时锁定主页键盘不起作用。
有什么方法可以解决这个问题吗?
在我的应用程序中阻止回家是绝对必要的,没有其他方法可以替换它。
答案 0 :(得分:1)
我在当前项目中面临同样的情况,我使用了相同的Home Key Locker库。
我必须在我的Kiosk模式活动中的对话框中输入,键盘没有显示,所以我这样做:
final Dialog d = new Dialog(this.activity);
d.requestWindowFeature(Window.FEATURE_NO_TITLE);
getHomeKeyLocker().unlock(); // Unlock before showing dialog
d.setContentView(R.layout.dialog);
final EditText edt = (EditText) d.findViewById(R.id.input);
Button btnSubmit = (Button) d.findViewById(R.id.btnOk);
btnSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
edt.setError(null);
String tempString = edt.getText().toString();
try {
float value = Float.valueOf(tempString);
if (value >= 10 && value <= 400) {
// Correct value entered
getHomeKeyLocker().lock(activity); // Lock again after getting the value
d.dismiss();
} else {
edt.setError("Enter correct value");
}
} catch (NumberFormatException e) {
e.printStackTrace();
edt.setError("Enter correct value");
}
}
});
d.show();
基本上,我只是在显示对话框之前解锁活动,并在获取值后再次锁定活动。