尝试根据内容大小动态调整UITableView的大小并失败后:
self.tableViewPairedDevices.sizeToFit()
我尝试了这个,只要我的今日小工具足够高,可以完全显示它,它就能正常工作:
var frame:CGRect = self.tableViewPairedDevices.frame
frame.size.height = self.tableViewPairedDevices.contentSize.height
self.tableViewPairedDevices.frame = frame
我的下一个挑战是让我的iOS 8 Today Widget根据UITableView大小调整大小,我几乎解决了这个问题:
self.preferredContentSize = self.tableViewPairedDevices.contentSize;
self.tableViewPairedDevices.setTranslatesAutoresizingMaskIntoConstraints(false)
问题是它们中只有一个一次工作,如果UITableView调整大小,扩展程序的视图不会,如果我注释掉调整UITableView大小的代码,今天扩展会获得成功调整大小(奇怪的是它知道UITableView的大小应该是多少,即使UITableView本身没有调整大小)但是UITableView没有。
关于如何实现这两件事的任何建议?
非常感谢!
答案 0 :(得分:2)
通过在Extension的视图中禁用AutoLayout,我能够完美地完成上述代码
答案 1 :(得分:0)
不要忘记UITableView里面有Scroll。你需要以某种方式定义高度。
我向UITableView添加了一个高度约束,然后我将该值更新为contentSize.height
这很有效。