您不想锁定设备,这是故意设计的。但是,您可以通过覆盖来禁用触摸输入onTouchEvent
。
然后您需要创建一个视图,如下所示:
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
<your code here>
<Disabletouch
android:id="@+id/black_hole"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</FrameLayout>
并像这样定义它:
public class DisableTouch extends View {
private boolean touch_disabled=true;
@Override
public boolean onTouchEvent(MotionEvent e) {
return touch_disabled;
}
public disable_touch(boolean b) {
touch_disabled=b;
}
}
在活动中调用它:
(DisableTouch) black_hole = findViewById(R.id.black_hole);
black_hole.disable_touch(true);
反过来:
black_hole.disable_touch(false);