如何以编程方式隐藏视图?

Tha*_*e90 114 java android

在我的申请中,我LinearLayout正好在彼此之上.通过一个菜单选项,我希望能够使底部消失,让顶部的一个落在消失的上面LinearLayout.

问题是,我不知道如何在Java中这样做.

它不需要动画,我想隐藏Layout另一个活动(菜单)的返回,在OnActivityResult.菜单activity设置了boolean我签入的内容OnActivityResult,根据它的值,我确定是否需要隐藏或显示底部Layout:

// Only change value if it is different from what it was.
if(mUseVolumeButtonAsPTT != resultData.getBoolean("UseVolumeButtonAsPTT")){
    mUseVolumeButtonAsPTT = resultData.getBoolean("UseVolumeButtonAsPTT");
    if(!mUseVolumeButtonAsPTT){
        // Hide lower LinearLayout.
    } else {
        // Show lower LinearLayout.
    }
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以给我一个关于如何做到这一点的提示或链接?

Eri*_*ass 301

view.setVisibility(View.GONE)如果要从布局中删除它,可以调用.

或者,view.setVisibility(View.INVISIBLE)如果你只想隐藏它.

来自Android文档:

无形

此视图不可见,但它仍占用布局空间.与setVisibility(int)和一起使用android:visibility.

GONE

此视图不可见,并且不需要任何空间用于布局.与setVisibility(int)和一起使用android:visibility.

  • 如果将用户设置为view.setVisibility(View.INVISIBLE),用户是否仍可与其进行交互? (16认同)
  • 那么在RelativeLayout中呢?视图位置相互依赖。我想知道视图消失后会发生什么。 (2认同)

DRi*_*FTy 18

试试这个:

linearLayout.setVisibility(View.GONE);
Run Code Online (Sandbox Code Playgroud)