无法在另一个子视图下方设置子视图

时间:2014-07-20 15:46:38

标签: ios objective-c uitableview

这是情景:

enter image description here

我有一个 MainVC 类的UIViewController

MainVC 中,我有{{1>} TextFieldVC 类。

现在在 TextFieldVC.m 里面,我创建了一个UITextField,应该在<{em>下面 下面插入<{1}}这个代码

UITableView

其中UITextField //TextFieldVC.m UIView *rootView = [self.window.subviews objectAtIndex:0]; [self.superview bringSubviewToFront:self]; [rootView insertSubview:self.autoCompleteTableView belowSubview:self]; 。每当用户开始编辑autoCompleteTableView时,都会创建UITableView,即 MainVC.m

中的UITableView

现在的问题是这个UITextField是在@Outlet之上创建的,我不明白为什么。

2 个答案:

答案 0 :(得分:0)

可能的解释是rootView在其子视图中没有文本字段。试试这个:

        [self.superview insertSubview:self.autoCompleteTableView
                         belowSubview:self];

通过这样做,您可以确保将表视图添加到同样包含文本字段的视图中,因此可以强制执行两个子视图之间的顺序。

答案 1 :(得分:0)

奇怪的行为,基于塞尔吉奥的答案。

如果我的根视图框架位于0,0以外的其他位置(例如:self.view.frame= CGRectMake(0, 1100, 300, 400);)。

=当我在控件上调用此行时,根视图返回0,0 !!!

  [self.superview insertSubview:self.autoCompleteTableView
                         belowSubview:self];

有什么想法吗?

相关问题