当我使用startActivity
并且我不知道它很奇怪时,第一个活动上的动画不起作用。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getSupportActionBar().hide();
ImageView img = (ImageView) findViewById(R.id.splash);
img.animate().scaleX(0.6f).scaleY(0.6f).rotation(1080f).setDuration(2000);
Intent intent = new Intent(getApplicationContext(), NextActivity.class);
startActivity(intent);
}
}
答案 0 :(得分:1)
使用此功能。
{{1}}
答案 1 :(得分:0)
我希望您尝试在某个时间显示APP徽标的缩放和旋转动画,然后尝试启动另一个活动。
由于您正在启动另一个活动,在Imageview上开始动画之前,ActivityManager将切换到下一个动画,因此您无法看到动画, 解决方案是将Animationlistner设置为赋予ImageView的ViewPropertyAnimator对象,并在onAnimationEnd()回调上启动主Activity。
代码段如下:
img.animate().scaleX(0.6f).scaleY(0.6f).rotation(1080f).setDuration(2000).setListener(new AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationRepeat(Animator animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animator animation) {
Intent intent=new Intent(getApplicationContext(),NextActivity.class);
startActivity(intent);
}
@Override
public void onAnimationCancel(Animator animation) {
// TODO Auto-generated method stub
}
});
答案 2 :(得分:0)
检查一下,
Intent intent=new Intent(this,NextActivity.class);
startActivity(intent);
答案 3 :(得分:0)
@Zakaria Ait Ouchrif,
您可以使用Activity overridePendingTransition()的方法和两个xml的in和out动画。
您可以在XML资源文件中定义简单的过渡动画。
您也可以将this tutorial视为相同的内容。