アプリのスプラッシュ スクリーンを作成しようとしています。imagesview プロパティを変更してアニメーションを設定しようとすると、エラーが発生します。
runonuithread と Hadler をテストしましたが、この 2 つのケースではエラーは発生せず、画面には何も表示されず、遅延 (コードで指定したとおり) の後、プログラム アクティビティが次のアクティビティに切り替わります。これが私のコードです。
@Override
public void run(){
try {
TranslateAnimation moveLefttoRight = new TranslateAnimation(500, 0, 0, 0);
moveLefttoRight.setDuration(5000);
moveLefttoRight.setFillAfter(true);
im.startAnimation(moveLefttoRight);//im is an image view
SystemClock.sleep(6000);
TranslateAnimation moveRighttoLeft = new TranslateAnimation(0, 100, 0, 0);
moveRighttoLeft.setDuration(1000);
moveRighttoLeft.setFillAfter(true);
im.startAnimation(moveRighttoLeft);
SystemClock.sleep(6000);
ScaleAnimation scale = new ScaleAnimation(0.3f, 1f, 0.3f, 1f,
ScaleAnimation.RELATIVE_TO_SELF, 0f,
ScaleAnimation.RELATIVE_TO_SELF, 0f);
scale.setDuration(1000);
scale.setFillAfter(true);
// Wait given period of time or exit on touch
sig.startAnimation(scale);//sig is an image view
SystemClock.sleep(2000);
}
この奇妙なエラーを修正するにはどうすればよいですか?