[英]React Native ProgressBarAndroid setState not working
我無法通過以下代碼解決問題。 我正在嘗試更改ProgressBarAndroid上的動畫效果,並使其每秒切換一次。 如果我在構造函數中將load設置為true,則代碼按預期工作,但如果將false設置為false,則代碼不起作用(這是我想要的,我不希望它立即開始進行動畫處理)。 設置為false時,進度欄始終保持不可見。 有任何想法嗎?
import React, { Component } from 'react';
import { ProgressBarAndroid } from 'react-native';
export default class App extends Component {
constructor(props) {
super(props);
this.state = {loading: false}; // works if it is set to true here instead
// Toggle the state every second
setInterval(() => {
this.setState({loading: !this.state.loading});
}, 1000);
}
render() {
return (
<ProgressBarAndroid animating={this.state.loading}></ProgressBarAndroid>
);
}
}
這實際上是幾周前我對ProgressBarAndroid
遇到的一個問題。 一旦啟動為false
,我就無法將其設置為true。
我當時的快速而骯臟的解決方案是將狀態更改移到animating
道具之外。
在您的情況下,請更改此:
<ProgressBarAndroid animating={this.state.loading}></ProgressBarAndroid>
對此:
<View>
{ this.state.loading ? <ProgressBarAndroid/> : null }
</View>
並確保還包含View
from react-native
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.