hvg*_*des 4 view storyboard reusability ios
我正在尝试创建一个自定义视图,使用nib和服务员.h/.m文件,然后通过IB创建该视图的多个实例,并将它们用作另一个视图的子视图.
我多次执行第5步和第6步,每次查看我想要的一次.最后,我将这些视图连接到父视图类的IBOutlets.
显然我做错了,因为我没有在自定义视图中看到我的标签.我怀疑我需要直接将nib与视图相关联,就像你对集合/表视图一样,但我还没有找到这样做的地方.
这样做的正确方法是什么?我想我可以通过编程方式添加视图,但是如何处理各种设备的布局(例如iphone 4 vs 5)?
我在下面概述的内容似乎有效
1)为自定义视图创建xib和.h/.m文件.
1a)假设您需要IBOutlets来查看您想要控制的元素,请为文件所有者提供身份检查器中.h文件中定义的类名.
2)在.h文件中定义属性
@property (nonatomic, retain) IBOutlet UIView *contentView;
2a)为您想要编程访问的xib中的所有子视图定义出口.
3)在.m文件中合成属性并执行
- (void)awakeFromNib
{
NSLog(@"awake from nib");
[[NSBundle mainBundle] loadNibNamed:@"yourNibName" owner:self options:nil];
[self addSubview:self.contentView];
}
Run Code Online (Sandbox Code Playgroud)
4)将空白视图从调色板拖到故事板中的容器中.将这些视图的类更改为.h文件中定义的类名.
运行应用程序时,您应该在子视图中看到xib的内容.
5)您现在可以在容器视图的.h文件中定义自定义子视图实例的出口,并像往常一样在故事板中连接它们.
| 归档时间: |
|
| 查看次数: |
4037 次 |
| 最近记录: |