我有一个 UITableViewController View ,我用 CGRectZero 框架分配/初始化了一个 UITableView :
self.tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];
我想在tableView的中间添加一个 View (带有UIActivityIndicatorView和UILabel的加载 View ),但我不知道如何定位它,因为我不知道tableView框架。
x = (self.tableview.frame.size.width - loadingView.frame.size.width) / 2.0;
y = (self.tableview.frame.size.height - loadingView.frame.size.height) / 2.0;
[loadingView setCenter:CGPointMake(x, y)];
我确实使用 CGRectZero 框架初始化了我的 tableView,这样它就可以占据屏幕上的整个可用位置(它确实做到了),但我认为它的框架会更新或其他什么。
有什么想法吗?谢谢!
最佳答案
我设法以编程方式估计框架。我没有提到我的 tableView 位于 navigationBar 和 tabBar 之间,所以这里是这种情况的代码:
CGFloat x = self.navigationController.view.frame.size.width;
CGFloat y = self.navigationController.view.frame.size.height -
self.tabBarController.tabBar.frame.size.height;
self.tableView = [[UITableViewController alloc] initWithFrame:CGRectMake(0.0, 0.0, x, y)];
上面发布的用于加载 View 定位的代码就像一个魅力!
当然,我愿意提供更好的解决方案
关于iphone - 使用 CGRectZero 框架将 UIView 放置在 UITableView 的中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2566114/