【问题标题】:How to change one image to another image with setState如何使用 setState 将一张图片更改为另一张图片
【发布时间】:2019-04-26 11:25:01
【问题描述】:
我在本机反应中有一个 GridView 组件。我有两个不同的图标来突出显示网格图像。
如何在使用 setState 按下图像时更改图标。
<GridView
itemDimension={80}
items={items}
style={styles.gridView}
renderItem={({ item }) => this.renderGrid(item)}
/>
【问题讨论】:
标签:
javascript
react-native
【解决方案1】:
你可以按照这个方法:
-
初始化一个状态(数组),您将在其中存储当前选择的图像
例如
this.state = {
selectedImages: []
}
-
每当有人点击图片时,您必须将图片的 id(或某个唯一键)推送或弹出到 selecetedImages 状态。这可以在onPress 的图像中完成。每当 onPress 运行时首先检查数组是否包含当前图像的 id(或某些唯一键)然后拼接 id 否则推送到 selectedImages 数组中
-
要显示高亮图标,您可以这样做
{selectedImages.includes(image.id) ? <HighlightIcon /> : null}
希望对你有帮助