gpt4 book ai didi

java - 我需要设置 setImageResource,暂停并更改为不同的 setImageResource

转载 作者:行者123 更新时间:2023-12-01 11:54:45 25 4
gpt4 key购买 nike

我正在尝试设置一个图像,并在短暂的停顿(如闪烁)后将其更改为不同的图像;并且它应该在应用程序启动后自动启动。

public class MainActivity extends ActionBarActivity {

ImageView image1;

private void flash(){
Thread flashing=new Thread(){
public void run(){
try {
image1.setImageResource(R.drawable.red_circle);
sleep(1000);
image1.setImageResource(R.drawable.white_circle);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
flashing.start();
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image1=(ImageView)findViewById(R.id.imageView1);

flash();

}

}这会导致错误和应用程序停止。

最佳答案

试试这个:

ImageView slide;
private Handler handler;
private int showPic = -1;// default value should be -1
Integer[] ids = new Integer[] { R.drawable.red_circle, R.drawable.white_circle};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.slide_show);
slide = (ImageView) findViewById(R.id.slide);
handler = new Handler();
handler.postDelayed(imageUpdate, 10);
}


private void setNextImage() {
showPic++;
if (showPic == ids.length) {
showPic = -1;
handler.removeCallbacks(imageUpdate);
} else {
slide.setImageResource(ids[showPic]);
handler.postDelayed(imageUpdate, 1000);
}
}

Runnable imageUpdate= new Runnable() {
@Override
public void run() {
setNextImage();
}
};

更新:如果您想在图像上循环,您可以将 setNextImage() 方法更改为此,另请注意,我将 showPic 的默认值更改为 -1(如果你想要循环或不循环它的默认值应该是-1):

private void setNextImage() {
showPic++;
if (showPic == ids.length) {
showPic = 0;
}
slide.setImageResource(ids[showPic]);
handler.postDelayed(imageUpdate, 1000);
}

onDestroy()方法中删除回调:

public void onDestroy(){
handler.removeCallback(imageUpdate);
super.onDestroy();
}

关于java - 我需要设置 setImageResource,暂停并更改为不同的 setImageResource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28531353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com