Tôi đã tạo một thành phần sử dụng ListView
để hiển thị danh sách liên hệ. Khi nhấp vào một hàng, tôi cập nhật một mảng trong thành phần của state
chứa tất cả các liên hệ đã chọn. Tuy nhiên, tôi không sử dụng mảng này làm dataSource
cho thành phần ListView
của tôi.Làm thế nào lực vẽ lại ListView khi this.state thay đổi (nhưng không phải là dataSource).
Tôi muốn vẽ lại ListView
mỗi khi mảng này được sửa đổi để hiển thị hình ảnh cho các liên hệ đã chọn.
Dưới đây là một ví dụ về tình hình hiện tại của tôi:
renderListView: function(){
<ListView
dataSource={this.state.dataSource}
renderRow={this.renderRow}
style={styles.listView}
/>
}
renderRow:function(row){
return if(this.state.something === true) <Text>Something</Text>
else <Text>Something Else</Text>
}
Tôi cố gắng để gọi .forceUpdate()
, nó gọi là render
phương pháp nhưng không phải là phương pháp renderRow
.
Bất kỳ đề xuất nào?
Bạn có thể thiết lập điều gì đó trên rnplay.org mà chúng tôi có thể chơi không? –
Tôi mới bắt gặp điều này. tuyên bố là một thành phần listview có thể cập nhật cho cả iOS và Android với tính năng kéo làm mới. Có vẻ ngọt ngào. Nghĩ rằng nó có thể hữu ích. https://github.com/FaridSafi/react-native-gifted-listview –