gpt4 book ai didi

android - 如何使只有一些 View 可触摸而使其他 View (如 RelativeLayout)不可触摸

转载 作者:行者123 更新时间:2023-11-29 01:53:01 36 4
gpt4 key购买 nike

Window w = getWindow();
w.addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);

上面的代码是让整个窗口不可触摸。

但是,这个窗口内的按钮也是不可触摸的,而我希望它是可点击的。

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Window w = getWindow();
w.addFlags(WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);

b = (Button)findViewById(R.id.button1);
b.setClickable(true);
b.setOnClickListener(this);

}

如何使该按钮可触摸?

最佳答案

布局中的其他 View 不应该注册点击,除非您注册它们。您期望将整个窗口设置为不可触摸的行为是什么?

编辑:此代码可用于在几乎任何 View 上设置任何设置,只要您希望它们完全相同即可。要将多个 View 设置为不可点击,只需将它们全部放入 view[] 数组并像这样遍历它们

TextView a,b,c;
EditText d,e,f;
RelativeLayout g,h,i;

@Override
protected void onCreate(){


//intstatiate and inflate all your views....you should know how to do that

View[] viewHolder = {a,b,c,d,e,f,g,h,i};
for(int i = 0; viewHolder.length>i; i++){

viewHolder[i].setClickable(false);

}

这将完全按照您的意愿进行,但除非其他 View 正在聚焦,否则您不必这样做。但它会起作用。

关于android - 如何使只有一些 View 可触摸而使其他 View (如 RelativeLayout)不可触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16848294/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com