iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
zhlooking
V2EX  ›  iDev

iOS 中 UITableView 的嵌套问题?

  •  
  •   zhlooking · May 24, 2016 · 8128 views
    This topic created in 3648 days ago, the information mentioned may be changed or developed.
    Apple 的文档说不推荐 UIScrollView 中嵌套 UIScrollView 。可是看 A 站和 B 站的 App 中“首页->热门推荐”界面,发现都是 UITableView 的 Cell 里面套 UIScrollView 再套 UITableView 的方式。自己实现了下,懵逼了,事件处理太繁琐,或者我的思路是错的?大家有什么思路么?谢谢。
    18 replies    2016-12-22 18:06:36 +08:00
    lastObject
        1
    lastObject  
       May 24, 2016
    loveuqian
        2
    loveuqian  
       May 24, 2016
    我都还准备 cell 内套 table 呢
    父子控制器应该可以解决这个问题吧
    jackisnotspirate
        3
    jackisnotspirate  
       May 24, 2016 via iPhone
    Cell 里里面可以装 VC 啊
    blackfire
        4
    blackfire  
       May 24, 2016
    杀死手机 app 开发者系列——真心不懂这么设计到底是有多好?
    如果其他页面是搬砖码起来的话,这样的页面完全就是积木搭起来的,维护的时候完全不敢去碰啊混蛋
    多层嵌套以后各种体验差(可能是我水平渣),作为第一用户的开发者视角完全骂人啊混蛋

    在萌币里前行吧少年,等你遇到 tableView 嵌套 scrollview 和 tableview ,其中的 scrollView 嵌套一个 webview 和一个 tableview 的需求时你就会觉得这也没什么了。为什么不能多点真诚,少点嵌套啊混蛋


    发泄完了,去嵌套吧
    zhlooking
        5
    zhlooking  
    OP
       May 24, 2016
    @lastObject 每错,就是套 :)
    @loveuqian @jackisnotspirate 父子控制器求详解?
    @blackfire 不,很蛋疼啊。
    zhlooking
        6
    zhlooking  
    OP
       May 24, 2016
    仔细看了下。上面的应该是一个单独的 View 。下面的是一个 ScrollView 中嵌套了两个 TableView ,通过 TableView 的 contentOffset.y 来移动上面的 View 的 origin.y 。这个思路对么?
    VichyChen
        7
    VichyChen  
       May 25, 2016
    @blackfire 道理大家都懂,求提供一个类似苹果商店首页布局的方法: tableView 里每个 cell 嵌套一个横向列表,苹果商店只有不到 10 几个,而我们这边的要求是 100 个。求推荐不嵌套还能有什么方法布局。。。
    spongebobsun
        8
    spongebobsun  
       May 25, 2016
    UITableViewCell 装 UICollectionView.
    lbj96347
        9
    lbj96347  
       May 25, 2016
    @VichyChen 在 UITableView 内装 WebView 呢。只要内存清理及时,放多少个 WebView 都没有问题。 WKWebView 是 WebKit 实现的,从 UIKit 上面分离出来了。性能也高。
    VichyChen
        10
    VichyChen  
       May 26, 2016
    @lbj96347 webView 好像也不错。几张图还行,我这里要显示 100 张图的话 webView 貌似一 load 就会全部图片 load 出来,没办法延迟加载了吧?
    toono
        11
    toono  
       May 31, 2016
    @spongebobsun 请问有什么这样子的栗子代码吗?现在就是做到这里,越写感觉坑越大, UITableViewCell 装 UICollectionView 之后 TableViewCell 的重用和数据是没问题,但是 CollectionView 的数据问题就大了,首先应该得每个 CollectionView 拥有一个数据源对象吧?但是如果数据源的实例话在 tableviewCell 的 datasource 里面写的话 CollectionView 的数据源们很可能都是同一个对象,这样就出问题了。哭泣脸
    spongebobsun
        12
    spongebobsun  
       Jun 1, 2016
    @toono 为啥数据源会是同一个对象喃。。。一个是 UITableViewDataSource 一个是 UICollectionViewDataSource 哇。。。还是我愚笨没理解你的意思。。。栗子不大好给。。。是公司的 code 。。。
    kitalphaj
        13
    kitalphaj  
       Jun 2, 2016
    @toono 重写 prepareForReuse ,在里面清空数据源。
    kitalphaj
        14
    kitalphaj  
       Jun 2, 2016
    @zhlooking 我写过 UIScrollView 套 UIWebView ,思路是 Disable 掉 UIWebView 的滚动,然后监听 UIScrollView 的滚动来手动设置 UIWebView 的 contentOffset 。这样可以实现给 UIWebView 加 Header, Footer 之类的效果。而且我记得滚动监听里面代码就 2 行。。。
    toono
        15
    toono  
       Jun 3, 2016
    @kitalphaj 我好像找到更好的实现办法 http://www.jianshu.com/p/c5d3ecc3ec5a
    fhefh
        16
    fhefh  
       Jun 18, 2016
    mark~~~~~
    HuangLibo
        17
    HuangLibo  
       Dec 22, 2016
    @loveuqian 父子控制器是正解!
    HuangLibo
        18
    HuangLibo  
       Dec 22, 2016
    @blackfire 一个包含各种板块的板块怎么可能不嵌套,不同的板块用子控制器来管理,不同的板块通过一个总线控制器来关联,每个板块各司其职。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1230 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 23:33 · PVG 07:33 · LAX 16:33 · JFK 19:33
    ♥ Do have faith in what you're doing.