我在RelativeLayout中有4个LinearLayout,我也在使用ImageView。显示ImageView时,我想禁用4个LinearLayouts及其内容。每个LinearLayout包含4个按钮。下面显示的是禁用和启用这些布局的功能。有人能帮助我理解为什么这不起作用吗?
private void disablelayout(final LinearLayout l1,final LinearLayout l2,final LinearLayout l3,final LinearLayout l4)
{
l1.setEnabled(false);
l2.setEnabled(false);
l3.setEnabled(false);
l4.setEnabled(false);
}
private void enablelayout(final LinearLayout l1,final LinearLayout l2,final LinearLayout l3,final LinearLayout l4)
{
l1.postDelayed(new Runnable(){
@Override
public void run() {
l1.setEnabled(true);
l2.setEnabled(true);
l3.setEnabled(true);
l4.setEnabled(true);
}
}, 3000);
}
答案 0 :(得分:2)
private void enableDisableView(View view, boolean enabled) {
view.setEnabled(enabled);
if ( view instanceof ViewGroup ) {
ViewGroup group = (ViewGroup)view;
for ( int idx = 0 ; idx < group.getChildCount() ; idx++ ) {
enableDisableView(group.getChildAt(idx), enabled);
}
}
}
答案 1 :(得分:0)
将setVisibility()用于INVISIBLE或GONE。
答案 2 :(得分:0)
像这样使用:
l1.setVisibility(View.GONE);
l2.setVisibility(View.GONE);
l3.setVisibility(View.GONE);
l4.setVisibility(View.GONE);
答案 3 :(得分:0)
将所有项目的“可点击”属性设置为false。方法是setClickable(boolean)。
答案 4 :(得分:0)
Use can use this for hide the whole layout
l1.setVisibility(View.GONE);
l2.setVisibility(View.GONE);
l3.setVisibility(View.GONE);
l4.setVisibility(View.GONE);
whenever you want to display particular layout then you can
l1.setVisibility(View.VISIBLE);