UITableViewController,获取可见区域的边界

时间:2011-01-17 12:47:28

标签: iphone objective-c cocoa-touch ipad uikit

我有这个问题。在我的应用程序中,我有很多细胞。当用户点击我正在加载VC并推送它的东西时。为了表明这种行为,我正在显示一个子视图,通知现在正在加载应用程序。问题是,当用户向下滚动并点击单元格时,我的子视图仍位于tableView的顶部,因此用户没有看到它。

我需要更改子视图的框架,以便我的用户可以看到它。我希望这个框架成为当前视图的中心。我怎么能这样做?

例如:我的内容是800像素的高度,现在我在400像素的子视图中显示有关加载的特定信息。当我的用户向下滚动到2400像素的单元格时,我仍然以400像素显示子视图,因此用户无法查看。

我试图通过检查被点击的单元格来计算新的frame.origin.y。问题是2400像素的单元格可能是用户看到的第一个单元格还是最后一个单元格,所以我怎样才能到达屏幕中间?

使用某些屏幕编辑:

当我第一次选择时: alt text

当我向下滚动大时间后选择: alt text

1 个答案:

答案 0 :(得分:0)

您在这里看到的内容是将加载视图添加为UIScrollView的子视图。您需要在scrollview之后将加载viewController添加到parentView中。

如果因为你的viewController是UIScrollview的子类而无法完成,请将其更改为常规的UIViewController子类,但实现scrollView协议,然后按照我上面的说法进行操作。除此之外,你必须将加载ViewController的框架映射到scrollView上的偏移量 - 不是一个好主意。