如果我使用handler
我可以延迟图像在特定时间内可见/不可见。
那样:
imageuser.setImageBitmap(bitmapObject);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
imageuser.setImageBitmap(null);
}
}, 5000);
假设我有三张图片(img1,img2,img3) 和
我想首先显示“img1”5秒然后它将不可见
然后img2可见5秒然后它将是不可见的
然后img3可见5秒然后它将是不可见的
怎么做? 请详细回答我:)提前感谢:)
答案 0 :(得分:0)
你只需要一个int变量,它可以显示当前状态并根据变化图像变化。像这样的东西
int i = 1;
android.os.Handler h = new Handler();
Runnable r = new Runnable() {
@Override
public void run() {
switch (++i){
case 1:
img1.setVisibility(View.VISIBLE);
img2.setVisibility(View.GONE);
img3.setVisibility(View.GONE);
break;
case 2:
img1.setVisibility(View.GONE);
img2.setVisibility(View.VISIBLE);
img3.setVisibility(View.GONE);
break;
case 3:
i = 0;
img1.setVisibility(View.GONE);
img2.setVisibility(View.GONE);
img3.setVisibility(View.VISIBLE);
break;
}
// Run again in 5s.
h.postDelayed(this, 5000);
}
};
h.postDelayed(r, 5000)
还要确保handler,runnable和int是全局变量,因此您可以在runnable中访问它们。