gpt4 book ai didi

java - 在android中创建幻灯片

转载 作者:行者123 更新时间:2023-11-30 03:16:17 25 4
gpt4 key购买 nike

我正在创建一个应用程序,用户可以在其中通过单击特定按钮启动图像幻灯片(自动播放)。我启动了一个线程,其中在 1 秒后将新图像设置为我的 imageView。问题是我的应用程序在几秒钟后停止响应并崩溃。

请检查我的代码并帮助我解决这个问题。 (变量被正确初始化)

 playThread = new Runnable() {

@Override
public void run() {
synchronized (this) {
for (int i=pos;i<mImageIds.length;i++){
//pos++;

selectedImage.setImageResource(mImageIds[i]);

try {

wait(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}}
}};

play.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
runOnUiThread(playThread);



}
});

}

当应用程序卡住时我的 logcat!

enter image description here

最佳答案

runOnUiThread() 方法用于更新用户界面。任何其他逻辑都不应该在那里发生。所以我会建议这样的事情:

Thread t = new Thread() {
for (int i=pos;i<mImageIds.length;i++){
runOnUiThread(new Runnable() {
@Override
public void run() {
selectedImage.setImageResource(mImageIds[i]);
}};);
try {
wait(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}};

play.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
t.start();
}
});

请注意,我没有测试这段代码。

关于java - 在android中创建幻灯片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20054057/

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