当FlatList加载图像时,React Native - 活动指示器

GIV*_*GIV 0 loading activity-indicator react-native

每当我的应用程序安装时,我都设置:

constructor(props) {
    super(props);
    this.state = {
        loading: true
    };
}
Run Code Online (Sandbox Code Playgroud)

我有一个活动指示器,其动画直到loading: false:

{this.state.loading &&
    <View style={styles.loading}>
         <ActivityIndicator color="red" animating={this.state.loading} />
    </View>
}
Run Code Online (Sandbox Code Playgroud)

我尝试在FlatList的文档中搜索一个方法会告诉我是否所有项目都已渲染,所以我可以调用this.setState({loading: false});但是,我没有设法找到这样的方法.

有人知道如何在列表加载数据时显示我的活动指示器吗?

Yas*_*ani 6

你的问题不是原生相关的反应.这就是为什么你在react本机文档中找不到任何关于它的帮助.

假设您的数据异步进入并且参考了您的问题,您无法确定此异步操作何时结束.

使用promises或async await或任何其他类似的功能来确定此异步操作何时结束,然后使用setState禁用活动指示符,然后显示flatList.

如果您需要更多解释或清楚上述说明,请告诉我.