代码之家  ›  专栏  ›  技术社区  ›  rm -rf

Android布局组元素

  •  0
  • rm -rf  · 技术社区  · 6 年前

    <!-- section 1 -->
    <LinearLayout>
     <ImageView/>
     <TextView/>
    </LinearLayout>
    <ViewPager/>
    <View/>
    
    <!-- section 2 -->
    <LinearLayout>
     <ImageView/>
     <TextView/>
    </LinearLayout>
    <ViewPager/>
    <View/>
    
    <!-- section 3 -->
    <LinearLayout>
     <ImageView/>
     <TextView/>
    </LinearLayout>
    <ViewPager/>
    <View/>
    

    我给出了这3个部分,并试图设置每个部分的可见性。但是如果我试图设置第1节的可见性,我需要将每个元素(LinearLayout、ViewPager、View)分开设置。有没有办法我可以分组每个部分,这样我只需要设置一次可见性,整个部分将被禁用?

    提前谢谢

    2 回复  |  直到 6 年前
        1
  •  8
  •   Cheticamp    6 年前

    如果顶层布局是 ConstraintLayout ,您可以将每个部分的所有视图放在一个组中。设置组的可见性将更改其所有成员的可见性。看到了吗 Group

    此类控制一组引用的小部件的可见性。小部件通过添加到以逗号分隔的ID列表来引用,例如:

     <android.support.constraint.Group
              android:id="@+id/group"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:visibility="visible"
              app:constraint_referenced_ids="button4,button9" />
    

    约束布局 然后你有几个选择。

    1. 将每个部分用另一个部分包装起来 ViewGroup 例如 FrameLayout . 设置视图的可见性

    --第1节--
    框架布局
    线性布局

    文本框


    查看

    --第2节--
    框架布局

    图片框

    /线性布局
    可视寻呼机
    查看


    框架布局
    线性布局
    图片框

    /线性布局
    可视寻呼机
    查看

    可以是 LinearLayout , RelativeLayout 等等-任何有意义的。 框架布局 作为例子

        2
  •  0
  •   Ibrahem    6 年前

    只需在包含要在主活动中隐藏的视图的父布局上调用setVisibility();

    有3个标志

    1. 可见
    2. 看不见的
    3. 跑了

    LinearLayout layoutOne= (LinearLayout) findViewById(R.id.layout_one);
        layoutOne.setVisibility(View.INVISIBLE);