objective-c - 如何在Superview的View中插入View? (iOS)

标签 objective-c ios subview superview uiview-hierarchy

我有下面的代码行...我如何修改它以将 subview 插入名为“foo”的 super View 的 View 中?

[[self superview] addSubview:copy3];

最佳答案

有不止一种方法可以做到这一点 -

1.在您的代码中有一个IBOutlet引用。这是从 xcode Interface builder 创建的。一旦你有了这个,那么它就相当简单了 -

[iboutlet_foo_object addSubview:copy3];

2.标记您感兴趣的 View 。再次标记 View 可以通过 xcode Interface builder 或代码完成。之后 -

Foo *fooObj = [[self superview] viewWithTag:tagInt];
[fooObj addSubview:copy3];

3.最后,您可以迭代 super View 中的所有 View 并查看哪一个是 Foo 类型 -

NSArray *subviews = [[self superview] subviews];
for(UIView *v in subviews)
{
    if(v isKindOfClass:[Foo class])
    {
        [v addSubview:copy3];
        break;
    }
}

希望这些方法对你有帮助...

关于objective-c - 如何在Superview的View中插入View? (iOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10942681/

相关文章:

ios - Swift 2.0 子类化 UIViewController 的子类并调用便利初始化器

ios - 弹出 View 不显示 subview

ios - 防止可拖动 View 离开屏幕

ios - 保持 UIView 从一个 Controller 到另一个 Controller

ios - 如果> 999,Authorize.NET iOS事务将无法处理

iOS - 防止重复将事件添加到日历

ios - iOS-iPhone应用程序文档“没有这样的目录”吗?

ios - 应用程序试图以模态方式呈现事件 Controller : uinavigationcontroller

objective-c - Objective-C 类中的不完整实现

ios - 使用 SWIFT 在 iOS 中缩放图像时出现内存泄漏