iOS 中 UITableView 的嵌套问题?

2016-05-24 21:50:52 +08:00
 zhlooking
Apple 的文档说不推荐 UIScrollView 中嵌套 UIScrollView 。可是看 A 站和 B 站的 App 中“首页->热门推荐”界面,发现都是 UITableView 的 Cell 里面套 UIScrollView 再套 UITableView 的方式。自己实现了下,懵逼了,事件处理太繁琐,或者我的思路是错的?大家有什么思路么?谢谢。
7239 次点击
所在节点    iDev
18 条回复
lastObject
2016-05-24 22:01:52 +08:00
loveuqian
2016-05-24 22:08:34 +08:00
我都还准备 cell 内套 table 呢
父子控制器应该可以解决这个问题吧
jackisnotspirate
2016-05-24 22:46:34 +08:00
Cell 里里面可以装 VC 啊
blackfire
2016-05-24 22:46:39 +08:00
杀死手机 app 开发者系列——真心不懂这么设计到底是有多好?
如果其他页面是搬砖码起来的话,这样的页面完全就是积木搭起来的,维护的时候完全不敢去碰啊混蛋
多层嵌套以后各种体验差(可能是我水平渣),作为第一用户的开发者视角完全骂人啊混蛋

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


发泄完了,去嵌套吧
zhlooking
2016-05-24 23:18:20 +08:00
@lastObject 每错,就是套 :)
@loveuqian @jackisnotspirate 父子控制器求详解?
@blackfire 不,很蛋疼啊。
zhlooking
2016-05-24 23:29:56 +08:00
仔细看了下。上面的应该是一个单独的 View 。下面的是一个 ScrollView 中嵌套了两个 TableView ,通过 TableView 的 contentOffset.y 来移动上面的 View 的 origin.y 。这个思路对么?
VichyChen
2016-05-25 09:46:33 +08:00
@blackfire 道理大家都懂,求提供一个类似苹果商店首页布局的方法: tableView 里每个 cell 嵌套一个横向列表,苹果商店只有不到 10 几个,而我们这边的要求是 100 个。求推荐不嵌套还能有什么方法布局。。。
spongebobsun
2016-05-25 09:50:06 +08:00
UITableViewCell 装 UICollectionView.
lbj96347
2016-05-25 14:54:03 +08:00
@VichyChen 在 UITableView 内装 WebView 呢。只要内存清理及时,放多少个 WebView 都没有问题。 WKWebView 是 WebKit 实现的,从 UIKit 上面分离出来了。性能也高。
VichyChen
2016-05-26 16:14:52 +08:00
@lbj96347 webView 好像也不错。几张图还行,我这里要显示 100 张图的话 webView 貌似一 load 就会全部图片 load 出来,没办法延迟加载了吧?
toono
2016-05-31 16:34:34 +08:00
@spongebobsun 请问有什么这样子的栗子代码吗?现在就是做到这里,越写感觉坑越大, UITableViewCell 装 UICollectionView 之后 TableViewCell 的重用和数据是没问题,但是 CollectionView 的数据问题就大了,首先应该得每个 CollectionView 拥有一个数据源对象吧?但是如果数据源的实例话在 tableviewCell 的 datasource 里面写的话 CollectionView 的数据源们很可能都是同一个对象,这样就出问题了。哭泣脸
spongebobsun
2016-06-01 17:00:19 +08:00
@toono 为啥数据源会是同一个对象喃。。。一个是 UITableViewDataSource 一个是 UICollectionViewDataSource 哇。。。还是我愚笨没理解你的意思。。。栗子不大好给。。。是公司的 code 。。。
kitalphaj
2016-06-02 07:59:59 +08:00
@toono 重写 prepareForReuse ,在里面清空数据源。
kitalphaj
2016-06-02 08:04:17 +08:00
@zhlooking 我写过 UIScrollView 套 UIWebView ,思路是 Disable 掉 UIWebView 的滚动,然后监听 UIScrollView 的滚动来手动设置 UIWebView 的 contentOffset 。这样可以实现给 UIWebView 加 Header, Footer 之类的效果。而且我记得滚动监听里面代码就 2 行。。。
toono
2016-06-03 23:50:08 +08:00
@kitalphaj 我好像找到更好的实现办法 http://www.jianshu.com/p/c5d3ecc3ec5a
fhefh
2016-06-18 23:11:33 +08:00
mark~~~~~
HuangLibo
2016-12-22 18:04:56 +08:00
@loveuqian 父子控制器是正解!
HuangLibo
2016-12-22 18:06:36 +08:00
@blackfire 一个包含各种板块的板块怎么可能不嵌套,不同的板块用子控制器来管理,不同的板块通过一个总线控制器来关联,每个板块各司其职。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/281025

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX