V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
NonClockworkChen
V2EX  ›  问与答

我是做 RN 的,想问个 Android 上的问题,如果用 Scrollview 嵌套 listview,是不是 listview 就不能滑动了。。

  •  
  •   NonClockworkChen · 2018-04-23 12:46:52 +08:00 · 2685 次点击
    这是一个创建于 2166 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我已经了解到 scrollview 嵌套 listview 并不是一个好的结构,可以把内容放到 headerview 中来规避一般的需求,可惜,现在的需求,是 4 个 tab-listview,规避不了。

    有没有 RN 的大神能指点下。

    需求是 scrollview 里有个 scrollable -tab -view (里面有个 4 个不同的 listview )
    7 条回复    2019-08-19 09:45:32 +08:00
    hotMan
        1
    hotMan  
       2018-04-23 13:41:03 +08:00
    scrollview 里面可以嵌套 listview, 但是嵌套后,有些功能不能正常使用,比如,分页等,看楼主需求,scrollable -tab -view 提出来,单独页面对应一个 ScrollView
    Totato5749
        2
    Totato5749  
       2018-04-23 23:24:10 +08:00
    这个需求蛮常见的 做安卓开发的肯定都遇过, 只要重写 listview 的高度计算部分就可以了,返回 listview 的全部 item 的总高度。
    Totato5749
        3
    Totato5749  
       2018-04-23 23:25:09 +08:00
    另外我记得也不是不能滑动,只是 listview 只会显示一行内容
    NonClockworkChen
        4
    NonClockworkChen  
    OP
       2018-04-23 23:48:04 +08:00
    @Totato5749 那可能是还是 RN 自己的锅。
    文档是有这么一句:Also inherits ScrollView Props, unless it is nested in another FlatList of same orientation.
    大致意思应该是,相同方向,就不继承 scrollview
    yurnery
        5
    yurnery  
       2018-08-06 09:21:27 +08:00
    @NonClockworkChen 找到什么办法没, 我现在也是有这种需要, 想在一个 FlatList 的 cell 里放 react-native-scrollable-tab-view , react-native-scrollable-tab-view 里的内容又是一个 FlatList
    NonClockworkChen
        6
    NonClockworkChen  
    OP
       2018-08-06 11:51:49 +08:00
    @yurnery 我们最后的解决办法是基于
    安卓里如果想要嵌套在 scrollview 里面的 flatlist 滑动,那么,外部的 scrollview 就需要把 scrollenable 设置 false。
    然后就是,在不同的情况下,动态设置外层的 scrollEnable。 笨办法,写起来也麻烦。但是实在没辙了。
    yurnery
        7
    yurnery  
       2019-08-19 09:45:32 +08:00
    @NonClockworkChen 这样处理, 不会一次性就把整个 Flatlist 全部加载完了吗? 如果有 onReachedEnd,是会一直触发这个回调, 这么常见的需求, RN 都没法很好的支持
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2844 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:22 · PVG 23:22 · LAX 08:22 · JFK 11:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.