Gar*_*gan 5 objective-c uiview addsubview ios
我试图找到笔尖中的所有视图,并将它们添加到我的内容视图中。
这就是我所拥有的,它成功地从self.view中删除了视图,但没有将其添加到self.contentView中
for (UIView *view in self.view.subviews) {
if (view.tag != 666) {
[view removeFromSuperview];
[self.contentView addSubview:view];
}
}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激。
代码中的问题是,当您调用removeFromSuperview
该视图时,父视图将释放该视图。无需调用removeFromSuperview
,只需将其添加为另一个视图的子视图即可将其从当前父视图中移除。
因此使用:
for (UIView *view in self.view.subviews)
{
if (view.tag != 666)
{
[self.contentView addSubview:view];
}
}
Run Code Online (Sandbox Code Playgroud)
根据UIView类参考:
addSubview:
将视图添加到接收者的子视图列表的末尾。
- (void)addSubview:(UIView *)view
参量
视图
Run Code Online (Sandbox Code Playgroud)The view to be added. This view is retained by the receiver. After being added, this view appears on top of any other subviews.
讨论区
此方法保留视图并将其下一个响应者设置为接收者,即其新的超级视图。
视图只能有一个超级视图。如果view已经具有一个超级视图并且该视图不是接收者,则此方法在使接收者成为其新的superview之前,删除先前的超级视图。
归档时间: |
|
查看次数: |
2266 次 |
最近记录: |