React native 如何在React Native中访问子视图?

React native 如何在React Native中访问子视图?,react-native,React Native,我是个新来的本地人。 我使用了平面网格,我想在单击事件时访问图像组件。我想更新它的图像,但我无法访问该图像标签。 点击网格项目,我想更新图像src 情景:- 我已经得到了食谱列表,点击这些我想显示他们选择的图标打勾 下面是我用过的平面网格 <FlatGrid itemDimension={130} items={this.state.recipie_listing} renderItem={({ item, index }) => ( <TouchableOpacity

我是个新来的本地人。 我使用了
平面网格
,我想在单击事件时访问图像组件
。我想更新它的图像,但我无法访问该图像标签。
点击网格项目,我想更新图像src

情景:-

我已经得到了食谱列表,点击这些我想显示他们选择的图标打勾

下面是我用过的平面网格

<FlatGrid
itemDimension={130}
items={this.state.recipie_listing}
renderItem={({ item, index }) => (
<TouchableOpacity               
onPress={() => this.AddRecipe(index, item.id)}>
<View>
<ImageBackground
style={{
height: 250,
width: "100%"
}}
  imageStyle={{ borderRadius: 10 }}
  source={{
  uri: item.image
 }}
>
<Icon
name={this.state.icon_name}
style={{
color: this.state.icon_color,
position: "absolute",
right: 2,
top: 2
}}
/>

<View
style={{
backgroundColor: "rgba(220, 222, 224, 0.8)",
height: 60,
width: "100%",
borderBottomEndRadius: 10,
borderBottomStartRadius: 10,
flexDirection: "row",
justifyContent: "center",
alignItems: "center",
position: "absolute",
bottom: 0 
}}
>
 <CustomText
style={{
marginStart: 10,
marginEnd: 5,
color: "white",
fontSize: 15,
fontWeight: "bold"
}}
>
 {item.name}
</CustomText>
</View>
</ImageBackground>
</View>
</TouchableOpacity>
)}
/>
(
this.AddRecipe(index,item.id)}>
{item.name}
)}
/>

首先,将showImage之类的状态变量添加到false,然后

在AddRecipe方法中,调用setState方法并切换变量值,然后切换要加载图像的位置src add conditional rendering 下面是一个代码示例

  state = { showImage : false}
  ------
  AddRecipe = () =>{
      this.setState({
         showImage:!this.state.showImage   
      })

  render(){
    return(
      ----------
     <ImageBackground
        style={{
        height: 250,
        width: "100%"
        }}
        imageStyle={{ borderRadius: 10 }}
        source={{
        uri: this.state.showImage === true ? src1 : src2 
        }}
      >
      ----------
     )

  }
state={showImage:false}
------
AddRecipe=()=>{
这是我的国家({
showImage:!this.state.showImage
})
render(){
返回(
----------
----------
)
}

就我对您的问题的理解而言,我认为这将有助于您。

嘿,Vaibhav提供一些代码示例,以便在您指定的问题上提供帮助。@PrazSolver感谢您表现出兴趣,我在帖子中做了更改,希望我能帮到您。