【问题标题】:ListView inside View prevent ScrollingView 内的 ListView 防止滚动
【发布时间】:2015-08-26 10:53:54
【问题描述】:

我正在尝试将<ListView> 与其他几个<View> 包装在<View> 中。当我这样做时,我无法滚动 ListView 的整个列表(我可以滚动一点,即使它尚未到达列表底部也会反弹)。最简单的渲染视图会出现问题。

        <View>
            <ListView
                dataSource={this.state.dataSource}
                renderRow={this.renderList.bind(this)}
                style={styles.listView}
                automaticallyAdjustContentInsets={false}/> 
        </View>

如果我没有将上面的代码用那个 &lt;View&gt; 包裹起来,上面的代码也可以正常工作

您可能会问为什么我需要将 ListView 包装在 View 中,因为我想在该视图中拥有一些其他视图,如果我不将它们包装在 &lt;View&gt; 中,则会发生 JSX adjasend error

        <View>
            <View>bla bla bla</View>
            <View>bla bla bla</View>
            <ListView
                dataSource={this.state.dataSource}
                renderRow={this.renderList.bind(this)}
                style={styles.listView}
                automaticallyAdjustContentInsets={false}/> 
        </View>

我该如何解决这个问题?

【问题讨论】:

    标签: reactjs react-native


    【解决方案1】:

    我需要在 &lt;View&gt; 上添加样式 flex : 1 包装 &lt;ListView&gt;

        <View style={{ flex : 1 }}>
            <ListView
                dataSource={this.state.dataSource}
                renderRow={this.renderList.bind(this)}
                style={styles.listView}
                automaticallyAdjustContentInsets={false}/> 
        </View>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 2010-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      • 1970-01-01
      相关资源
      最近更新 更多