Articles of animation

在Android中停止ObjectAnimators的AnimatorSet

我试图在单击按钮时停止ImageView的animation。 我正在使用的AnimatorSet是一个由5个ObjectAnimators组成的AnimatorSet ……问题是当单击按钮时我无法ObjectAnimators如何从ImageView停止并清除此animation,因为btn.clearAnimation()显然不起作用。 感谢您的帮助。

Android ViewPager具有不同的animation,如放大,淡入淡出等

我创建了ViewPager,那里只有2个页面,我想把淡入淡出,缩放,缩放,3d等animation当寻呼机滚动一页到另一个页面时,意味着第二个整页显示具有特定的animation,我没有如何做到这一点的想法,请任何人给我一个放置animation的例子,当我们移动到另一页时,我们animation寻呼机。 主要是我有三个寻呼机类:1)ViewPagerMainActivity:它调用两个片段,在这个主要看起来像是enter code here public class ViewPagerMainActivity extends FragmentActivity implements OnClickListener, OnPageChangeListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.view_pager_main); } private class MyPagerAdapter extends FragmentPagerAdapter { public MyPagerAdapter( android.support.v4.app.FragmentManager fragmentManager) { super(fragmentManager); } @Override public Fragment getItem(int pos) { switch (pos) { case 0: return FirstFragment.newInstance(“”); case 1: return SecondFragment.newInstance(“”); default: return SecondFragment.newInstance(“Default”); […]

如何在布局中制作从右到左的animation

我参与了从右到左的问题。 我通过单击按钮上的“隐藏”和“可见”布局创建它。 但是现在我想要一个animation,这样当我点击按钮时,会发生“从右到左”的animation,当我再次点击按钮时,相同的布局将是“从左到右”的animation,并作为幻灯片布局。 码 final RelativeLayout rightlayout = (RelativeLayout) findViewById(R.id.relativelayout2); rightlayout.setVisibility(View.GONE); Button rightbtn = (Button) findViewById(R.id.righttoleft); rightbtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { System.out.println(“clickecd”); if(keyright == 0) { //rightlayout.setVisibility(View.VISIBLE); keyright++; slideToLeft(rightlayout); } else { //rightlayout.setVisibility(View.GONE); TranslateAnimation animate = new TranslateAnimation(0,rightlayout.getWidth(),0,0); animate.setDuration(1000); animate.setFillAfter(true); rightlayout.startAnimation(animate); keyright–; } } }); // To animate view slide out […]

LinearLayout animate()剪辑视图,clipChildren不起作用

我正在尝试为container LinearLayout(20dp)和btn按钮(20dp)设置animation(向右移动它们),但它们会在main LinearLayout(40dp)的整个宽度之后被剪裁。 我在两者上都尝试过clipChildren=”false” ,但它不起作用。 我不能将match_parent大小用于布局,因为它是一个叠加应用程序,并将阻止后面的触摸。 有任何想法吗? 我的布局: 我的(简化)代码: super.onCreate(); windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE); params = new WindowManager.LayoutParams( LayoutParams.WRAP_CONTENT, //can’t have MATCH_PARENT LayoutParams.WRAP_CONTENT, //can’t have MATCH_PARENT WindowManager.LayoutParams.TYPE_SYSTEM_ALERT | WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY, WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL | WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSLUCENT); LayoutInflater inflater = (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); main = (LinearLayout) inflater.inflate(R.layout.main,null); btn = (ImageButton)main.findViewById(R.id.btn); container = (LinearLayout)main.findViewById(R.id.container); btn.setOnClickListener(onClickListener); windowManager.addView(main, params); } animation代码: public void onClick(View […]

在animation完成之前调用ObjectAnimator onAnimationEnd侦听器

它奇怪而奇怪,但似乎当我将AnimatorListener附加到我用于animation片段事务的ObjectAnimator时,回调实际上在animation结束前稍微调用。 我使用监听器将内容填充到片段中(来自DB)。 这个操作有时需要很长时间(约200毫秒),当我在onCreate左右这样做时,它只会破坏animation,因为在animation过程中会返回并呈现内容……然后会有很多垃圾和口吃。因此,当我将填充调用添加到监听器时,它也适用于DB选择需要很长时间。 但有时它几乎是瞬间的,在这种情况下,当animation结束前调用回调时我遇到了问题。 回调和实际结束之间的差距很长,从DB返回数据并再次破坏animation的流畅性:/ 你们知道吗,如何解决这个问题? 下面几乎是该片段的整个代码。 所以基本上有两种方法可以解决这个问题。我可以find完全另一种解决方案,如何在没有垃圾animation的情况下将内容填充到片段,或者我可以find一种方法来解决监听器的问题。 还有一种我不喜欢的方式。 我可以创建一个Handler并调用postDelayed..awful解决方案:) public class ImportantContactsFragment extends Fragment { public static final String TAG = ImportantContactsFragment.class.getSimpleName(); private ListView list; private Spinner departmentsSwitcher; private Spinner facultiesSwitcher; private ContactsAdapter adapter; private ArrayList currentListOfPeople; private int currentFaculty = 1; private Department currentDeparment = Department.STUDY_DEPARTMENT; private PullToRefreshAttacher mPullToRefreshAttacher; private boolean boot = […]

CardViewanimation:点击提升和扩展?

我目前正在创建我的第一个Android应用程序,并想知道设置一个cardviewboost然后扩展到一个更大的矩形,揭示一个新的片段是什么方法? 编辑:(无论原始卡位于何处,新片段都会填满屏幕的中间三分之一)

在运行时添加animation

我想在运行时为AnimatedVectorDrawable设置AnimatedVectorDrawable ,而不使用.xml文件。 实际上我使用.xml文件的方式与文档示例相同: AnimatedVectorDrawable 所以,我有vector_drawable.xml包含带有嵌套 和定义形状的 。 对于这个向量,我有animated_vector_drawable.xml包含其中android:animation绑定到 。 最后一步是使用定义animation文件rotation.xml ,由animated_vector_drawable.xml 一切正常,但问题出现了,当我需要创建许多不同或类似animation的不同形状(向量)时,因为这会生成许多.xml文件。 我不能将一个.xml文件中的准备好和准备好的包含到另一个(某种标记)中,所以我需要将相同的代码复制到另一个文件中。 这很烦人。 如果我想对少数元素使用相同的animation,但每个animation必须有不同的延迟或任何属性值( alpha , rotation , interpolator …),我必须创建包含新.xml文件一个属性值而不是使用相同的,一个文件具有更改的属性值。 这也很烦人。 我发现我可以使用ObjectAnimator并为AnimatedVectorDrawable设置alpha & fillColor但是当我想要更改它的translateX , translateY , rotation或任何其他属性时会出现问题。 有没有办法在没有.xml情况下做到这一点。 我只想访问

如何实现Material Design Choreographing表面animation

我想知道如何实现Choreographing表面animation(例如https://material.google.com/motion/choreography.html#choreography-creation in Choreographic surface section)。 我实际上使用了Alphaanimation和翻译animation,但它似乎并不完全是我们在材料设计网站上看到的。 有人有一个如何做到这一点的好例子吗?

使用ObjectAnimator顺时针旋转ImageView

我正在尝试旋转图像,使其适合下方的另一个图像。 所以这就是我想要实现的目标: 这就是我能够实现的目标: 它基本上包含两个ImageView ,第一个包含地板上方的部分,第二个包含覆盖地板的瓷砖。 我的问题是我无法以顺时针方向为瓷砖图像设置animation,也无法围绕x轴旋转视图,使其适合包含地板上方部分的图像。 我正在使用ObjectAnimator来animation我的ImageView 。 以下是我的代码: public class VisualizerFragment extends Fragment { ImageView image; FlipImageView image_back; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { getActivity().setRequestedOrientation( ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); View view = inflater.inflate(R.layout.fragment_visualizer, container, false); image = (ImageView) view.findViewById(R.id.vs_image); image_back = (FlipImageView) view.findViewById(R.id.vs_image_back); Glide.with(getActivity()) .load(R.drawable.floor3) .centerCrop() .fitCenter() .listener(new RequestListener() { @Override public boolean […]

可扩展的listview setselectionfromTop,带有animation和填充

我使用这个https://github.com/idunnololz/AnimatedExpandableListView/blob/master/src/com/idunnololz/widgets/AnimatedExpandableListView.java启用animation(扩展和收缩)到默认的android‘d可扩展列表视图。 但是,我面临的一个限制是将当前展开的点击移动到顶部。 我试过setSelectionFromTop(groupPosition, 0) 这是一个问题: – 如何添加animation以使其位于顶部? – 如何将它带到特定高度的顶部。 让我们说从顶部低于10px。 任何指针都会很棒。 注意:解决方案应该适用于sdk 14及更高版本。