如何在 ANDROID 中为 View.GONE 到 View.VISIBLE 的视图设置动画

Posted

技术标签:

【中文标题】如何在 ANDROID 中为 View.GONE 到 View.VISIBLE 的视图设置动画【英文标题】:How do I Animate a view from View.GONE to View.VISIBLE in ANDROID 【发布时间】:2020-11-09 12:48:32 【问题描述】:

这是我的布局xml的结构:

<RelativeView>

    <ScrollView
    android:layout_
    android:layout_>

        <...>

    </ScrollView>

    <View
    android:layout_
    android:layout_
    android:visibility="gone" />

</RelativeView>

当我希望视图出现时,我在 java 文件中使用View.VISIBLE。我这样做是因为我不希望 View 与 ScrollView 重叠。

现在,我想将视图从View.GONE 变为View.VISIBLE,使其看起来不错。 我知道动画可以从 Alpha 0 到 1 完成。 但是是否可以从View.GONEView.VISIBLE 进行动画处理?

【问题讨论】:

很有可能..尝试在根布局中添加android:animateLayoutChanges="true"。或者如果你想设置一些自定义动画Check this. 这能回答你的问题吗? Android adding simple animations while setvisibility(view.Gone) 【参考方案1】:

android:animateLayoutChanges="true" 添加到您的xml 文件中,如果您想要淡出 在您的java 类中使用view.animate().alpha(0.0f);,如果您想要淡入 使用view.animate().alpha(1.0f);

【讨论】:

以上是关于如何在 ANDROID 中为 View.GONE 到 View.VISIBLE 的视图设置动画的主要内容,如果未能解决你的问题,请参考以下文章

Recyclerview 中的 view.GONE 仍然保留空间

Xcode 故事板等效于带有 View.GONE 的 Android LinearLayout

Android:为啥要设置可见性(View.GONE);或 setVisibility(View.INVISIBLE);不工作

Android set View.GONE 不会在列表视图中“释放”空间

android View with View.GONE 仍然接收 onTouch 和 onClick

Android:为什么setVisibility(View.GONE);或setVisibility(View.INVISIBLE);不工作