在以下示例中,调用触摸方法的屏幕时,该方法将数字传递给MyViewController存储的视图控制器。唯一的问题是视图控制器不存储数字,因为我想稍后在另一个方法中使用它。请帮忙。谢谢。
MyViewController.h
@class MyView;
@interface ViewController : UIViewController {
int number;
}
-(void)assignNumber(int)sentNumber;
@property int number;
MyViewController.m
-(void)loadView {
MyView *aView = [[MyView alloc] initWithFrame:wholescreen];
self.view = aView;
[aView release];
}
-(id)initWithNibName...... {
number = 0;
}
-(void)assignNumber:(int)sentNumber {
number = sentNumber;
}
MyView.h& MyView.m
触摸[viewController assignNumber:5];
答案 0 :(得分:1)
如果您未声明@synthesize,则无法从viewController内部访问数字。尝试添加
@synthesize number;
到MyView.m的顶部;这会创建setter和getter。那么,你可以替换你的
[viewController assignNumber:5];
用
打电话[viewController setNumber:5];
并使用viewController.number
或[viewController number]
访问它。
答案 1 :(得分:0)
您可能希望@Connthesize ViewController实现中的变量号。