Iphone 如何从父类使用IBOutlet?
我正在使用iOS,从父类访问IBMOutlet时遇到了一些问题,在本例中是带有角色生命的标签 我的ViewController(父级)如下所示:Iphone 如何从父类使用IBOutlet?,iphone,objective-c,ios,Iphone,Objective C,Ios,我正在使用iOS,从父类访问IBMOutlet时遇到了一些问题,在本例中是带有角色生命的标签 我的ViewController(父级)如下所示: @interface OpponentViewController : UIViewController { IBOutlet UILabel *opponent_life; IBOutlet OpponentView *opponentView; } @end OpponentView(child)类是角色(图像)所在的位置,也是玩家进行所有触摸交
@interface OpponentViewController : UIViewController {
IBOutlet UILabel *opponent_life;
IBOutlet OpponentView *opponentView;
}
@end
OpponentView(child)类是角色(图像)所在的位置,也是玩家进行所有触摸交互的位置。当玩家触摸对方视图时,标签应刷新
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
}
谢谢。例如,OpponentView应该是UIImageView之类的子类。我可能误解了您遇到的问题,但是如果您根本无法将实例变量视为出口,您可以尝试在属性声明中包含
IBOutlet
。例如:
@property (nonatomic, retain) IBOutlet UILabel *opponent_life;
@property (nonatomic, retain) IBOutlet OpponentView *opponentView;
在代码中,
OpponentView
类扩展了任何类,如UIView
或UIImageView
等
因此,您必须将UIView
或UIImageView
(根据需要)从库中拖动到IBOutlet
中的对手视图
然后将inspector中“viewIdentity”中的类更改为OpponentView
。然后您可以链接到文件所有者
这样你就能解决你的问题
问候,
Satya如果我正确理解了你的问题,当你在对手视图
中检测到触摸时,你想更新对手的生活。以下是两种将标签分配给视图的方法,以便可以从到使用标签:withEvent:
1.将标签指定给IB中的视图
在OpponentViewController
的nib文件中,将视图类型从UIView
更改为OpponentView
,然后将标签连接到视图的出口
2.在viewDidLoad
在'OpponentViewController'中
- (void)viewDidLoad {
[super viewDidLoad];
opponentView.opponent_life = opponent_life;
}
@interface OpponentView : UIView {
UILabel *opponent_life;
}
@property (nonatomic, retain) UILabel *opponent_life;
- (void)viewDidLoad {
[super viewDidLoad];
opponentView.opponent_life = opponent_life;
}