• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

android - react-Native 更改平面列表中所选项目的颜色

[复制链接]
菜鸟教程小白 发表于 2022-12-11 18:29:04 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我有一个呈现多个按钮的平面列表,我想在 esee 平面列表中标记选定的按钮,我尝试了很多东西,但在所有这些中,一旦我选择了一个,平面列表就会标记所有项目,除此之外,它不会更新,直到我更新组件中的某些内容并保存更改,然后它会进行热重新加载,这就是标记项目的显示方式

 constructor(props) {
    super(props);
    this.state = {
       pressStatus: false,
    };

    _onShowUnderlay(){
       this.setState({ pressStatus: true });
    }

    render() {
       return (
          <FlatList
                    keyExtractor={this._keyExtractor}
                    data={this.state.ninosPicker}
                    renderItem={({item}) => (
                       <View style={styles.hijos}>
                          <TouchableHighlight
                             activeOpacity={1}
                             underlayColor="#3fa9f5"
                             onShowUnderlay={this._onShowUnderlay.bind(this)}
                             style={this.state.pressStatus ? styles.buttonPress : styles.botonsito }
                             onPress={() => this.setHijo(item.grado, item.grupo)}>
                                 <Text style={this.state.pressStatus ? styles.welcomePress : styles.titBtnGyG }>{item.name}</Text>
                           </TouchableHighlight>
                           <TouchableHighlight
                              activeOpacity={1}
                              underlayColor="#3fa9f5"
                              style={this.state.pressStatus ? styles.gradosPress : styles.grados }>
                                  <Text style={this.state.pressStatus ? styles.welcomePress : styles.titBtnGyG }>{item.grado}</Text>
                           </TouchableHighlight>
                           <TouchableHighlight
                               activeOpacity={1}
                               underlayColor="#3fa9f5"
                               style={this.state.pressStatus ? styles.grupoPress : styles.grupo }>
                                   <Text style={this.state.pressStatus ? styles.welcomePress : styles.titBtnGyG }>{item.grupo}</Text>
                           </TouchableHighlight>
                       </View>
                      )}/>



Best Answer-推荐答案


您必须考虑到在编码中您放置了一个唯一状态,在本例中为 this.state.pressStatus,您需要在执行时在每个对象的排列中拥有一个属性 pressStatus按钮的 Action 你必须改变那个按钮的状态

关于android - react-Native 更改平面列表中所选项目的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45601413/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap