禁用布局中的所有元素 - Android

时间:2013-12-23 10:49:06

标签: android android-layout android-widget

在我的 Android 应用中,要求在按钮点击结转前禁用多个UI元素。我是否可以通过引用布局来禁用布局中的所有UI元素,而不是逐个禁用它们。是否有可能。可以帮助我。

2 个答案:

答案 0 :(得分:6)

您可以像这样递归地禁用所有视图。 只需将布局作为视图传递给方法:

private void enableViews(View v, boolean enabled) {
    if (v instanceof ViewGroup) {
        ViewGroup vg = (ViewGroup) v;
        for (int i = 0;i<vg.getChildCount();i++) {
            enableViews(vg.getChildAt(i), enabled);
        }
    } 
    v.setEnabled(enabled);
}

只需运行enableViews(view, false)即可停用,或enableViews(view, true)再次启用。

答案 1 :(得分:1)

在xml布局中使用以下属性(作为示例textView)

android:visibility="gone"

按钮点击事件

myText.setVisible(myText.VISIBLE)

您可以逐个使用它们,也可以将所有不可见内容放在一个布局中并隐藏布局。然后,一旦你想要显示它们,只需看到布局。然后所有都会显示

需要更多评论..只需评论。