我是Kotlin的新手,我open和public关键词之间感到困惑.谁能告诉我这些关键词之间的区别?
我有这段代码,其中包含父小部件Homepage和子小部件CountryList。在 中CountryList,我创建了一个函数,该函数使用 API 来获取国家/地区列表。我想RefreshIndicator在应用程序中启用一个,所以我不得不修改Homepage小部件并添加小部件的GlobalKey访问getCountryData()功能CountryList。在RefreshIndicator已经完成了它的工作做好。但现在的问题是,当我RefreshIndicator在应用程序中拉取和使用时,该getCountryData()函数被调用,但即使在列表中显示所有数据后,圆形微调器也不会运行(如屏幕截图所示)。
那么,有人可以建议我一种让旋转器运行的方法吗?main.dart包含Homepage小部件的代码如下:
import 'package:flutter/material.dart';
import 'country_list.dart';
GlobalKey<dynamic> globalKey = GlobalKey();
void main() => runApp(MaterialApp(home: Homepage()));
class Homepage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text("List of countries"), actions: <Widget>[
IconButton(icon: Icon(Icons.favorite), onPressed: (){},)
],),
body: RefreshIndicator(child: CountryList(key:globalKey), onRefresh: (){globalKey.currentState.getCountryData();},),
);
}
}
Run Code Online (Sandbox Code Playgroud)
country_list.dart包含CountryList小部件的代码是: …
为了便于解释“then”的重要性,谁能告诉我这段代码中发生了什么?
fetchComments().then(response => {
this.setState({
comments: response.comments
});
});
Run Code Online (Sandbox Code Playgroud) 在 Xcode 11 之前,我可以简单地使用cmd + option + /在// MARK: -我的项目类的扩展名上方添加 pragma 标记 ( )。但是,在 Xcode 11 中,我找不到这样的快捷键组合来添加这样的标记。谁能告诉我怎么做?