UIView
类。在里面,我声明了一个UIImageView
的IBOutlet
属性。#import <UIKit/UIKit.h>
@interface SettingItem : UIView{
}
@property (strong, nonatomic) IBOutlet UIImageView *myImage;
@end
现在我正在使用Storyboard(故事板)。有一个视图控制器(viewcontroller)。我将UIView
拖到了视图控制器中,并将一个UIImageView
作为以上UIView
的子视图。我从Storyboard中将“SettingItem”类设置为UIView
,然后通过在 utilities 窗口中从 SettingItem
的outlet中进行正常拖动,将outlet与myImage连接起来。
SettingItem
实现
#import "SettingItem.h"
@implementation SettingItem
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
[self baseInit];
}
return self;
}
-(id) initWithCoder:(NSCoder *)aDecoder{
self = [super initWithCoder:aDecoder];
if (self) {
// Initialization code
[self baseInit];
}
return self;
}
- (void) baseInit{
NSLog(@"myImage %@"self.myImage);
}
/*
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
// Drawing code
}
*/
@end
现在我的问题是myImage
始终为nil
,上面的NSLog
仅为该outlet打印(null)
。我检查了storyboard中的视图并检查了其outlet引用,它指向myImage
。我错过了什么。我在谷歌上搜索了帮助,但找不到任何解决方法。
请问您能指出我做错了什么吗?
strong
而不是weak
?这是因为它是UIView
本身的属性,所以它是该属性的唯一所有者吗?谢谢。 - Pablo A.