我正在寻找一种在Android设备屏幕上短暂显示图像的方法。我现在发现的所有内容都是在ImageView
上实例化一个layout
,然后清除它,但我想知道是否还有其他方法可以做到这一点。
对于文本,Toast
允许这样做,并且图片的相似之处正是我在寻找的内容。
首先,您可以使用其中一个libraries创建自定义的Toast。
只需创建一个布局文件.xml
并显示它而不是Toast,就可以了。
这可以简单地通过使用Runnable如下实现:
private ImageView imgView;
private final int interval = 1000; // 1 Second
private Handler handler = new Handler();
private Runnable runnable = new Runnable(){
public void run() {
if (imgView != null) {
imgView.setVisibility(View.INVISIBLE);
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
imgView = findViewByID(R.id.imgView);
flashImage();
}
private void flashImage() {
imgView.setVisibility(View.VISIBLE);
handler.postDelayed(runnable, interval);
}
postDelayed
方法将在1秒后隐藏imageView。您可以根据需要自定义它。