Articles of animation

AlphaAnimation不起作用

我一直在寻找解决我的问题。 但是我的代码似乎没问题。 我将尝试解释:我的布局定义中有一个与android:alpha =“0”的TextView。 我想(点击图像时)显示TextView与AlphaAnimation,从0.0f到1.0f。 我的问题是,当我点击图片,没有任何反应。 但奇怪的是,如果我在布局定义中将其设置为1,并单击图像,则可以看到animation(alpha 1 – > alpha 0 – > alpha 1)。 我究竟做错了什么? 我的代码: TextView tv = (TextView) findViewById(R.id.number); AlphaAnimation animation1 = new AlphaAnimation(0.0f, 1.0f); animation1.setDuration(1000); animation1.setFillAfter(true); tv.startAnimation(animation1); 提前致谢。

Android – 如何停止活动更改之间的animation

我在我的应用程序中有多个不同的活动,我不想在活动之间切换时任何过渡animation。 下面是我如何改变活动之间: Intent i = new Intent(FirstActivity.this, SecondActivity.class); i.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(i); 这是第一次开始一个新的活动的作品。 没有animation,但是当我回到已经启动的Activity时,似乎忽略了“Intent.FLAG_ACTIVITY_NO_ANIMATION”,并且发生了默认animation。 我似乎无法弄清楚为什么会发生这种情况。

使用java代码更改animateLayoutChanges属性

我正在使用布局更改animation的Android应用程序。 我想知道的是,有没有人知道如何改变使用Java代码“andorid:animateLayoutChanges”proberty。 我目前的价值是 android:animateLayoutChanges="false" 我想在活动onResume()方法中将其更改为“true”。

在最终animation位置保持animation视图

所以我使用animation来激活视图: <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator" > <translate android:duration="1000" android:fromYDelta="0%" android:toYDelta="-75%" /> </set> 它在视觉上做我想要的,但我也想冻结这个animation的结果。 就像我需要以某种方式得到结果布局参数(或其他东西?)animation后,并将其设置为布局。 假设Y坐标的布局从0变为100,但是我并不知道什么是坐标,什么是坐标。 我需要得到结果的坐标,并将其设置为布局因为如果不这样做布局返回到animation后的初始位置,但我需要使它保持在新位置,而不是返回。 另外我需要2.3.x兼容的解决scheme。 更新1 我也试过NineOldAndroids: ObjectAnimator.ofFloat(rootWrapper, "translationY", -rootWrapper.getHeight()*75/100).start(); 这animation视图和视图停留在animation位置 – 这正是我想要实现的。 然而,所有的控制都在虚拟的位置上。 即使你的布局只能看到其底部的25%,如果我点击那个空白的屏幕区域,那么75%的剩余屏幕看起来是空的,然后onClick触发button的(这是b4animation)。 如果设置了xml-animtaions,也会发生同样的情况 animation.setFillAfter(true); 如何解决这个问题? 所有的控件必须随着视图移动。 更新2 代码: public void showAbout(){ final Animation animShow = AnimationUtils.loadAnimation(this, R.anim.about_in_from_bottom); animShow.setFillAfter(true); //ObjectAnimator.ofFloat(rootWrapper, "translationY", -rootWrapper.getHeight()*75/100).start(); animShow.setAnimationListener(new AnimationListener() { @Override public void onAnimationStart(Animation […]

有没有一种方法来监听AnimatedVectorDrawables中的animation结束

我已经创build了一个AnimatedVectorDrawable,它工作得很好,现在我正在寻找一种方法来更改animation或完成后隐藏视图。 我希望有一个听众,但看起来不像。 有人可以帮忙吗? 编辑 所以我find了解决方法,但不是一个非常优雅的方式。 我所做的是创build一个线程并进行轮询,如果animation正在运行。 new Runnable() { public void run() { while(mLoop) { if(mAnimatedVectorDrawable.isRunning()) { Thread.sleep(mPollingInterval); } else { mLoop = false; // TODO what ever } } } }; 如果有人find更好的解决scheme,请分享。

ViewPager片段 – 共享元素转换

我正在开发的应用程序显示图像的网格。 当你点击一个图像,它进入细节视图。 详细信息视图包含一个ViewPager,允许您在网格中的每个图像之间滑动。 这是通过传递path列表(包含网格中的每个图像),以及点击图像的偏移量,以便ViewPager可以设置为初始显示该页面来完成的。 在ViewPager的当前偏移量页面的片段内部有一个共享元素转换的最佳方式是什么? 网格(RecyclerView)图像应展开为当前页面中的全屏图像。 我看到了推迟和恢复活动转换的能力,所以应用程序将等待显示共享元素转换,直到从磁盘加载图像。 但是我希望能够使视图寻呼机中正确的页面变成animation,并且在用户返回时(因为您可以在页面之间滑动)而退出到当前页面。 如果你现在刷到不同的页面,最初的页面是什么animation回到网格。 目前,我使用格式为“image_ [index]”的transitionName为视图分页器的片段中的每个图像分配一个。 当我开始细节活动时,我使用相同的transitionName,索引是偏移量。 与此相关,我也想知道如何使长时间的按下涟漪。 当您更改视图的激活状态时,似乎取消了波纹。 我想要一个类似于Gmail的效果,纹波重新开始,并在长按完成后快速结束并触发激活状态。

在Android中以animation方式将ImageView移动到不同的位置

我在RelativeLayout有几个ImageView 。 现在,当用户点击任何一个ImageView,我希望它被微妙的animation移动到指定的位置。 例如; 我最初设置与ImageView关联的LayoutParams边距为layoutparams1.setMargins(90,70,0,0); 然后将其添加到布局。 而当imageview被挖掘,我想它的新位置是200,200 ,animation。 那么,这可能吗? 如果是,那么怎么样? 请注意,我有两个RelativeLayout和它的所有子ImageView以编程方式创build。 而且我对android开发很陌生,因此预计会有详尽的答案。

将animation侦听器设置为“animation”animation

我正在使用overridePendingTransition方法来执行自定义的活动animation。 我想知道什么时候animation结束(callback/侦听器)。 有没有什么直接的办法来实现这一点,如果不是,请build议我一些工作。

如何在Android中使用翻译animation连续上下移动图像?

我已经成功地做了一个animation使用Translate Animation意味着图像从顶部到底部。 这里是代码: private ImageView mScanner; private Animation mAnimation; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mScanner = (ImageView)findViewById(R.id.Scanner); mAnimation = new TranslateAnimation(0, 0, 0, 500); mAnimation.setDuration(10000); mAnimation.setFillAfter(true); mAnimation.setRepeatCount(-1); mAnimation.setRepeatMode(Animation.REVERSE); mScanner.setAnimation(mAnimation); mScanner.setVisibility(View.VISIBLE); } 现在我想要当图像到达屏幕的底部,它应该开始回到顶部。 我怎样才能做到这一点? 注意:完成反向模式。 请参阅代码。 但现在的问题是,从底部到顶部移动时会留下线条。 像附加的图像。 如何删除这一行?

在Android中启动活动的自定义animation无法按预期工作

我对Android很陌生。 我需要在活动打开时在我的应用程序中自定义animation。 我在我的应用程序styles.xml使用了以下代码 <style name="YourAnimation.Activity" parent="@android:style/Animation.Activity"> <item name="android:windowEnterAnimation">@anim/fade_in</item> <item name="android:windowExitAnimation">@anim/fade_out</item> </style> 然后将样式应用于同一个文件中的主题。 <style name="YourTheme" parent="android:Theme.Translucent"> <item name="android:windowAnimationStyle">@style/CustomAnimationActivity</item> </style> 然后在我的AndroidManifest.xml添加主题 <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/YourTheme" > </application> 但是,当我运行这个时,发生以下错误。 我想我需要在我的项目中添加animationml文件。 但是,不知道该怎么做。 有人请帮助我。 提前致谢。 🙂 -编辑- 这是fade_in.xml <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true"> <alpha android:duration="1000" android:fromAlpha="0.0" android:interpolator="@android:anim/accelerate_interpolator" android:toAlpha="1.0"/> </set> 这是fade_out.xml <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true"> <alpha android:duration="1000" […]