如何让android中的actcity褪色? 我使用了以下代码,但没有任何反应
public class MetroActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.metro_splash);
getWindow().setWindowAnimations(R.anim.intro_anim);
Runnable r= new Runnable() {
@Override
public void run() {
Intent i = new Intent(getApplicationContext(),MainActivity.class);
startActivity(i);
}
};
Handler h = new Handler();
h.postDelayed(r, 3000);
}
}
动画xml:
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="100"
android:fromAlpha="0.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:toAlpha="1.0" />
答案 0 :(得分:3)
使用此代码在两个活动之间进行平滑淡入淡出:
res / anim中的fadein.xml:
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="100" />
res / anim中的fadeout.xml
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="100" />
将以下内容放在Activity MainActivity的onCreate方法中。在setContentView为我工作之前。
overridePendingTransition(R.anim.fadein, R.anim.fadeout);
注意:如果您使用的是Android2.o或更高版本,则覆盖OverPendingTransition工作
修改强>
或将此代码放入MainActivity
后尝试 @Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.metro_splash);
getWindow().setWindowAnimations(R.anim.intro_anim);
Animation anim = AnimationUtils.loadAnimation(this,R.anim.animation);
// 'body' is root layout id which is for MainActivity
findViewById(R.id.body).startAnimation(anim);
}