【问题标题】:Animate Views when Activity starts in AndroidActivity 在 Android 中启动时为视图设置动画
【发布时间】:2021-03-13 11:05:42
【问题描述】:

我正在使用 startActivity(); 完成 FlashScreen 并开始 MainActivity 我想像动画一样从左向右缓慢滑动 MainActivity 的线性布局。但它没有发生。首先线性布局加载,然后它执行动画,所以它没有用。 这是我的代码:

slide_from_left.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false">
    <translate android:fromXDelta="-100%" android:toXDelta="0%"
        android:fromYDelta="0%" android:toYDelta="0%"
        android:duration="700"/>
</set>

MainAcitivity.java

Animation animFadein = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slide_from_left);
mLinearLayoutParent.startAnimation(animFadein);

请帮我解决这个问题。 谢谢

【问题讨论】:

    标签: android android-studio android-activity android-animation


    【解决方案1】:

    如果您从任何一侧滑动,那么这个View 在初始化时(开始时)应该在这个方向上“滑出”。考虑向 XML 添加适当的参数,在您的情况下,android:translationX 将是 mLinearLayoutParent。使用一些非常高的值来确保这个View 不可见,因为在这里你不能像&lt;translate 标签中那样按视图的百分比设置翻译。当动画开始时,android:fromXDelta="-100%" 线将在动画开始时将View 移动到这个位置(宽度的精确-100%,作为动画的初始值)

    【讨论】:

      【解决方案2】:

      要在每个活动打开或关闭时为其设置动画,您需要创建四个动画文件(即:slide_in_rightslide_in_leftslide_out_right强>slide_out_left)。创建这些动画后,您必须在 values/styles.xml 中添加以下代码:

      <style name="android:customActivityAnimation"     parent="@android:style/Animation.Activity">
      <item name="activityOpenEnterAnimation">@anim/slide_in_right</item>
      <item name="activityOpenExitAnimation">@anim/slide_out_left</item> 
      <item name="activityCloseEnterAnimation">@anim/slide_in_left</item> 
      <item name="activityCloseExitAnimation">@anim/slide_out_right</item> 
      
      </style>
      

      然后在您的默认应用程序主题中添加此样式:

      <style  name="android:windowAnimationStyle">@style/customActivityAnimation</style> 
      

      【讨论】:

        猜你喜欢
        • 2016-11-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-12-15
        • 1970-01-01
        相关资源
        最近更新 更多