这是情景:
我有一个 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
之上创建的,我不明白为什么。
答案 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];
有什么想法吗?