gpt4 book ai didi

Android 2.2 实现 Runnable Public void run() 未被调用

转载 作者:行者123 更新时间:2023-11-29 22:20:02 27 4
gpt4 key购买 nike

我有以下内容:-

public class resApp extends MapActivity implements Runnable {

public void run() {
searchImage.setVisibility(View.GONE);
}

}

我还有一个在此之前运行的后台线程,但它似乎运行正常。

当我运行应用程序时,run() 永远不会被调用。

你能帮忙吗?此代码在大约 6 个月前确实有效,但设备是 2.1。

谢谢

克里斯


编辑

我已经实现了

 private Handler handler;

handler = new Handler() {
@Override
public void handleMessage(Message msg) {
if (msg.toString().equalsIgnoreCase("1")) {
ad.dismiss();
} else {
pd.dismiss();
}
}
};

作为示例,我已经有一个在后台运行的异步任务,在 2.1 中我可以在其中使用 getter 和 setter。我现在不得不将它们取出并放入 run() 方法中,因为 2.2 不喜欢在异步任务中设置 onclicklistener。我需要做的就是在执行后调用 run() 方法但已经尝试了所有方法:-

protected void onPostExecute(Object result) {
// Pass the result data back to the main activity
if (dialog != null) {
resApp.this.dialog.dismiss();
}
}

我可以这样做吗:-

 handler = new Handler() {
@Override
public void handleMessage(Message msg) {
this.resApp.run();
}
};

最佳答案

您可以使用Handler调用run()方法。

Handler myHandler = new Handler();
resApp myObj;

然后使用 myHandler.post(myObj); 调用它

关于Android 2.2 实现 Runnable Public void run() 未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7482612/

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