我有几天试图解决这个问题,但我不能解决,对此的解决方法是转到StackOverflow:D。碰巧我正在使用libgdx(制作游戏的库)并在Android中查询代码是通过Handler类,运行Runnable进行的,我真的不知道它是如何工作的。
基本上我想要从Runnable检索值。将Handler类与回调或类似方法一起使用
我不得不说我不太了解多线程编程,并且在Handler类中看到了几种方法,但是我不明白它是如何工作的(消息传递,回调等)。
public class ActionResolverAndroid implements ActionResolver {
Handler handler;
Context context;
public ActionResolverAndroid(Context context) {
handler = new Handler();
this.context = context;
}
public boolean checkAndroidData(){
final boolean[] result = {false};
handler.post(new Runnable() {
@Override
public void run() {
// Android code here
// I need know the value of this variable
result[0] = true;
}
});
return result[0];
}
Run Code Online (Sandbox Code Playgroud)
非常感谢您的阅读。欢呼
pd)我不能使用Runnable .join()或Callable <>
我已经使用Gradle导入了Libgdx projecto。在按照以下说明进行操作之后:https : //github.com/libgdx/libgdx/wiki/Gradle-and-Intellij-IDEA#running-your-project
但是,尝试启动桌面版本时会返回下一个错误:
(* class Bootstrap是核心的主要类)
信息:等级:执行任务:[:desktop:assemble,:core:assemble]
信息:2015年6月18日10:29-编译完成,在5秒37毫秒内出现3个错误和1个警告
错误:等级:任务':desktop:compileJava'的执行失败。
编译失败;有关详细信息,请参见编译器错误输出。警告:等级:[选项]引导程序类路径未与-source 1.6一起设置
D:\ workspace \ delee \ desktop \ src \ com \ josemwarrior \ delee \ desktop \ DesktopLauncher.java
错误:(5,30)Gradle:错误:找不到符号类Bootstrap
错误:(12,28)Gradle:错误:找不到符号类Bootstrap
我正在使用Android Studio 1.2.2
当我执行“制作”按钮时,出现下一个错误:
D:\ workspace \ delee \ desktop \ src \ com \ josemwarrior \ delee \ desktop \ DesktopLauncher.java
错误:(5、30)错误:找不到符号类引导程序
错误:(12、28)错误:找不到符号类Bootstrap 1警告
错误:任务':desktop:compileJava'的执行失败。编译失败;有关详细信息,请参见编译器错误输出。