在Ipad scrollview中使用bringSubviewToFront

时间:2011-04-15 18:43:58

标签: ipad uiscrollview uisplitviewcontroller

在我的Ipad应用程序中,我有一个拆分视图,其中详细视图是滚动视图... 我有滚动视图的3个子视图,它们是tableviews ... 执行操作时,如何使用- (void)bringSubviewToFront:(UIView *)view将scrollview的其中一个子视图置于前面? (因为视图按照它们添加的顺序“堆叠”,最后一个添加在顶部)。我应该在子视图中还是在detailViewController中编写代码,如何调用它?

1 个答案:

答案 0 :(得分:1)

您在控制器中编写代码。

控制器应该可以通过IBOutlet属性访问表视图。或者,如果您没有使用笔尖设置它们,控制器应该是创建它们的那个。

例如,如果某个按钮点击负责显示特定的表格视图,则可以使用该按钮的动作处理程序方法调用bringSubviewToFront:方法。

但是:听起来你有三个桌面视图,并且使用bringSubviewToFront:来显示当前的视图,它们都在UIScrollView中。

  1. 每个UITableView都包含一个UIScrollView。不要在scrollview中放置一个scrollview,他们会争取跟踪触摸,事情会变得奇怪。只需将三个表视图放在一个简单的UIView中。

  2. 您应该考虑隐藏非活动视图(call setHidden:),而不是bringSubviewToFront:。这样,隐藏的视图将不会被视为响应者链的一部分(不会被发送事件)。