我有一个Kotlin函数需要一段时间,然后将返回一个结果(它下载并解析一个文件).
我像Flutter一样运行它:
void click() {
platform.invokeMethod('runMyLongFunc').then((a) {
print("Done");
setState(() {});
});
}
Run Code Online (Sandbox Code Playgroud)
我应该怎么做才能在后台线程中运行(截至目前它在UI线程上阻塞).
我尝试点击异步,它没有帮助(void click() async).
我需要为我的 iOS 应用程序创建一个设置页面。在我的 Android 端,我有 SwitchListTile 来很好地布局开关。
有没有 Flutter 小部件可以帮助我,还是我必须自己编写一个?
我正在 Golang 中制作一棵(非二元)树。
在Java中,我会使用类似的东西
class Node{
List <Object> data;
}
Run Code Online (Sandbox Code Playgroud)
其中 data 可以是指向数据或子节点的指针
在 C 或 C++ 中,我会使用 void*。
我应该在 golang 中使用什么类型
我有一个setMethodCallHandler从我的 Java 代码运行回调的,我希望它设置一个包含结果的 Future。就像是
Future<String> fun() async {
return setMethodCallHandler((MethodCall call) {
return () async {return call.arguments["arg"];}();
});
}
Run Code Online (Sandbox Code Playgroud)
我想要做的是如果 call.argument 将返回“abc”,
var a = await fun();
Run Code Online (Sandbox Code Playgroud)
a 将等于“abc”
我找到的唯一信息是关于setMethodCallHandler以下内容的文档:
如果处理程序返回的 future 以结果完成,则该值被发送回平台插件调用者,包装在此通道的编解码器定义的成功信封中。如果未来以 PlatformException 完成,则该异常的字段将用于填充错误信封,该信封被发送回。
但我不明白如何将“平台插件调用者包装在此频道的编解码器定义的成功信封中”?