私は最初のAndroidプロジェクトに取り組んでいます。メインメニューが表示される前に黒くフェードする簡単なスプラッシュ画面を作っています。これまでのところ動作します。問題は、画像がフェードアウトした直後です。メインメニューを表示する前に、1秒間ポップアップして戻ってきます。ここでTrouble with Fade Out - Androidのアニメーション
はSplashActivity.javaのためのコードです:
public class SplashActivity extends Activity
{
LinearLayout mLinearLayout;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
mLinearLayout = new LinearLayout(this);
ImageView i = new ImageView(this);
i.setImageResource(R.drawable.splash);
mLinearLayout.addView(i);
setContentView(mLinearLayout);
Animation fade = AnimationUtils.loadAnimation(this, R.anim.fade_out);
i.startAnimation(fade);
fade.setAnimationListener(new AnimationListener() {
public void onAnimationEnd(Animation animation)
{
startActivity(new Intent(SplashActivity.this, MenuActivity.class));
SplashActivity.this.finish();
}
public void onAnimationRepeat(Animation arg0) {
}
public void onAnimationStart(Animation arg0) {
}
});
}
}
ここsplash.xmlためのコードです:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "vertical"
android:layout_width = "match_parent"
android:layout_height = "match_parent"
android:background = "#000">
</LinearLayout>
は最後に、ここにフェードアウトするためのXMLです:
<set android:shareInterpolator="false" xmlns:android="http://schemas.android.com/apk/res/android">
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="500"
android:startOffset="2500">
</alpha>
</set>
カップルノート: 今すぐスプラッシュ画面はショーのためのものです(私がri本当の目的を果たしていません)。 AndroidManifest xmlなど、必要と思われるものを貼り付けることができます。
何かすべての助けがありがとうございます。ありがとう!
また、 'fade.setFillAfter(true)'を呼び出すこともできます。アニメーションが終了すると、最終結果がビューに適用されます。 – dmon