7

我有以下平面列表渲染方法,在点击列表项时,它将调用 this._onPress 方法:

render() {
      return (
      <TouchableOpacity  onPress={this._onPress} >
        <View style={styles.bookItem} >
          <Image style={styles.cover} source={{uri:this.props.coverURL}}/>
          <View style={styles.info} >
            <Text style={styles.title}>{this.props.title} </Text>
            <Text style={styles.author}>{this.props.author}</Text>
            <Text style={{height: 8}}/>
           </View>
           <View style={styles.rightIcon}>
                <Icon name="chevron-right" size={28} color={'#AAAAAA'} />
          </View>
        </View>
      </TouchableOpacity>
    );
  }

在以下代码中添加 swipeout 标签后,swipeout 可以工作,但点击项目不再调用 this._onPress 方法:

 render() {
    // Buttons
    var swipeoutBtns = [
      {
        text: 'Delete',
        onPress: this._buttonPress
      }
    ]
    return (
      <TouchableOpacity  onPress={this._onPress} >
      <Swipeout right={swipeoutBtns} >
        <View style={styles.bookItem} >
          <Image style={styles.cover} source={{uri:this.props.coverURL}}/>
          <View style={styles.info} >
            <Text style={styles.title}>{this.props.title} </Text>
            <Text style={styles.author}>{this.props.author}</Text>
            <Text style={{height: 8}}/>
           </View>
           <View style={styles.rightIcon}>
                <Icon name="chevron-right" size={28} color={'#AAAAAA'} />
          </View>
        </View>
      </Swipeout>
      </TouchableOpacity>
    );
  }

这是对 react-native-swipeout 的限制吗?

4

1 回答 1

2

如果您将 Swipeout 作为第一个标签,并将可触摸作为下一个嵌套标签,我认为它会起作用。但是,它似乎使 Swipeout 功能的响应速度降低

于 2018-09-10T10:16:56.557 回答