我有一个标准的UITable。当用户滚动行然后点击其中一个单元格时;他们将被转移到另一种观点。从单元格点击到新视图将有一些处理时间。我想在一个视图中显示一个UIActivityIndicator,它覆盖了UITable的中心。我不确定如何获得UITable的可见中心。
我的代码:
myView.center = self.tableView.center;
将它放在UITable的中心,直到我开始进一步向下滚动。然后UIActivityIndicator保持在顶部,因此看起来UITableView.center不代表“可见中心”。
关于如何实现这一目标的任何提示?
谢谢! 跳蚤
答案 0 :(得分:1)
将活动指示器放在tableview的父级而不是tableview本身中,然后它不会使用表视图滚动
答案 1 :(得分:1)
有两种方法可以实现这一目标。
您可以将活动指示器视图添加到包含tableView
的同一视图中,然后将它们设置为相同的中心:
UIView* superview = [tableView superview];
yourActivityIndicator.center = tableView.center;
[superview addSubview:yourActivityIndicator];
或者您决定将监视器视图添加到tableView,但是必须计算此视图的中心,这取决于指标视图的大小。
CGSize tSize = tableView.frame.size;
CGSize aSize = yourActivityIndicator.frame.size;
yourActivityIndicator.center = CGRectMake(
(tSize.width-aSize.width)*0.5,
(tSize.height-aSize.height)*0.5,
aSize.width,
aSize.height);
[tableView addSubview:yourActivityIndicator];