Java 如何制作自定义视图的隐藏和显示动画 任务:

Java 如何制作自定义视图的隐藏和显示动画 任务:,java,android,kotlin,android-animation,Java,Android,Kotlin,Android Animation,我想用动画隐藏和显示我的视图 麻烦: 首先,我试图通过改变视图的可视性(GONE,visible)(我使用Transition API)来实现这一点,但动画中存在缺陷 然后我尝试用缩放动画来做,但是在editText(子视图)中有一个带有提示的bug 我要设置动画的自定义视图: 问题: 此动画有良好的实践吗?我如何集成它?TransitionManager.beginDelayedTransition()应在对视图组进行任何更改之前先调用。查看应该给你一个想法的列表。你是从View.GON

我想用动画隐藏和显示我的视图


麻烦: 首先,我试图通过改变视图的可视性(GONE,visible)(我使用Transition API)来实现这一点,但动画中存在缺陷

然后我尝试用缩放动画来做,但是在editText(子视图)中有一个带有提示的bug


我要设置动画的自定义视图:
问题:
此动画有良好的实践吗?我如何集成它?

TransitionManager.beginDelayedTransition()
应在对
视图组进行任何更改之前先调用。查看应该给你一个想法的列表。

你是从View.GONE开始的吗?如果是,请尝试从View.INVISIBLE开始。系统无法使用view.GONE测量视图set@Redwine如果我这样做,我的视图(没有内容)会占用大量重要空间
class SearchAdditionalView(context: Context, attrs: AttributeSet) : LinearLayout(context, attrs) {

    private val transitionSet: TransitionSet by lazy {
        val transitionSet = TransitionSet()

        with(transitionSet) {
            addTransition(ChangeBounds())
            interpolator = DecelerateInterpolator()
            duration = 200
        }

        transitionSet
    }

    init {
        inflate(context, R.layout.include_search_navbar_addition, this)

    }

    fun toggle() {
        visibility = View.VISIBLE
        TransitionManager.beginDelayedTransition(parent as ViewGroup, transitionSet)
    }
}