2011-04-15 76 views
0

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

回答

1

您将代码写入控制器。

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

例如,如果按钮水龙头负责显示特定的表格视图,则按钮的动作处理程序方法就是您调用bringSubviewToFront:方法的地方。但是,这听起来像是你有三个表格视图,并且使用bringSubviewToFront:来显示当前的视图,而且它们都在UIScrollView中。

  1. 每个UITableView都包含一个UIScrollView。不要把滚动视图放在滚动视图内,他们会为跟踪触摸而战,事情会变得很奇怪。只需将三个表视图放在一个普通的UIView中。

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

+0

谢谢你的回复..我怎么会叫setHidden:到其他2个表视图?现在我执行的操作是在中间表(中间子视图)中选择一个单元格时。因此,我在哪里编写setHidden:隐藏其他2个表格(其他2个子视图)? – learner2010 2011-04-15 18:55:03

+1

在不了解代码的情况下很难回答这个问题。但它听起来像你希望它发生在did-select-cell的table view委托方法中。 – benzado 2011-04-15 18:57:30

+0

这里是一个链接到我原来的问题,从这一个想出来 - http://stackoverflow.com/questions/5668765/zooming-animation-problem-in-scrollview-ipad。从那,你能告诉我哪一个会我的tableview委托? – learner2010 2011-04-15 19:01:05