在加载带有动画的屏幕后删除图像,Android
我正在尝试在活动之间显示一个启动屏幕。为此,我使用了一个处理程序,该处理程序加载一个ImageView,然后在一定时间后将可见性设置为GONE 我想让它更别致一点,并用loadAnimation为它制作动画。我遇到的问题是,一旦处理程序结束,动画就会停止,但不会从屏幕上删除加载的图像。相反,它只是作为整个活动的背景 我想知道处理程序停止后如何删除飞溅图像 下面是我的代码:在加载带有动画的屏幕后删除图像,Android,android,android-layout,Android,Android Layout,我正在尝试在活动之间显示一个启动屏幕。为此,我使用了一个处理程序,该处理程序加载一个ImageView,然后在一定时间后将可见性设置为GONE 我想让它更别致一点,并用loadAnimation为它制作动画。我遇到的问题是,一旦处理程序结束,动画就会停止,但不会从屏幕上删除加载的图像。相反,它只是作为整个活动的背景 我想知道处理程序停止后如何删除飞溅图像 下面是我的代码: private static final long SPLASHTIME = 3000; @Override protect
private static final long SPLASHTIME = 3000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main)
ImageView splash = (ImageView)findViewById(R.id.splashscreen);
final Animation a = AnimationUtils.loadAnimation(getBaseContext(),R.anim.progress_anim);
a.setDuration(1000);
splash.startAnimation(a);
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
a.cancel();
splash.setVisibility(View.GONE);
}
}, SPLASHTIME);
}
飞溅图像的XML:
<ImageView
android:id="@+id/splashscreen"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/loading_circle"
android:layout_gravity="center"
/>
只需全局声明splash,而不是在oncreate()中。我认为您需要在XML:ImageView中添加可见性:gone
并使imageview不可见您需要添加
a.setFillAfter(true);
在Runnable中的代码末尾。删除xml中的图像,并在oncreate中设置该图像。