如何在 Today Extension 中调整 UITableView 的大小
Posted
技术标签:
【中文标题】如何在 Today Extension 中调整 UITableView 的大小【英文标题】:How to resize UITableView in Today Extension 【发布时间】:2014-09-14 09:28:05 【问题描述】:我正在为 iPhone 和 iPad 构建 Today Extension,但我遇到的问题是我无法为 iPad 和 iPhone 使用不同的 Storyboard。
我可以使用
调整扩展视图的宽度if isIpad()
width = 550
else
width = 275
preferredContentSize = CGSizeMake(width, 200)
但我无法使用此代码调整 tableViews 框架的大小
tableView.frame = view.frame
在上面的代码之后。
有人知道如何制作通用的今日扩展吗?
【问题讨论】:
【参考方案1】:您可以使用 UITableViewController 或使用 autoLayout 将 tableView 固定到容器。在这两种情况下,宽度都会自动调整。
对于小部件的高度,使用如下内容:(self.rows 应该是包含行的 NSArray)
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
if (self.rows)
CGSize size = self.preferredContentSize;
size.height = self.rows.count * 44.0f;
self.preferredContentSize = size;
return self.rows.count;
return 0;
【讨论】:
谢谢。我现在正在使用 UITableViewController。这成功了:) 并自动调整内容大小以适合我正在使用的 tableViewpreferredContentSize = tableView.contentSize
有没有办法考虑到自调整单元格和动态类型?以上是关于如何在 Today Extension 中调整 UITableView 的大小的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Today Extension 中显示资产目录中的图像?
如何通过 Today Extension (iOS 8) 访问 Core Data/CloudKit
如何将数据从应用程序显示到Today Extension Swift