转换时EditText提示可见

Mor*_*sko 13 android android-transitions android-textinputlayout

在我的应用程序中,我正在使用Android Activity Slide过渡.我遵循了一个很好的教程,一切都按预期工作,除了我的提示EditText,其中包含InputTextLayout:

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/activity_vertical_margin">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:hint="Your name"/>
</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

所有组件都很好地动画,但提示只是在动画开始之前弹出并保持在最终位置.我是否必须添加一些额外的代码来告诉框架为该提示设置动画?

根据Android开发人员文档,它应该工作(或者至少它不是不受支持的).

我正在使用支持设计库的22.2版.

如果有人能指出我正确的方向,那就太棒了.

cVo*_*nin 8

尝试这个解决方案,它适用于我:

当您有> 1个TextInputLayouts时,将TextInputLayouts放入容器中

inputTextPanel : LinearLayout
  TextInputLayout
    login : EditText
  TextInputLayout
    password : EditText
Run Code Online (Sandbox Code Playgroud)

并在onCreateView中:

setContentView(R.layout.login_layout)
configuration(fromSdk = 21) {
    inputTextPanel.isTransitionGroup = true
}
Run Code Online (Sandbox Code Playgroud)

如果你只有一个,你可以

myTextInputLayout.isTransitionGroup = true
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你的解决方案.为简单起见,您还可以在xml中添加android:transitionGroup ="true".只需添加到每个TextInputLayout以避免添加额外的LinearLayout嵌套. (4认同)

Rag*_*esh 1

这是一个错误。我一直在寻找解决办法。我使用的解决方法是在动画之前将 edittext 提示设置为空,并在动画完成后设置 edittext 提示。但我不知道这是否是你想要做的。