Ios 目标C:访问视图中ViewController的整数值?

Ios 目标C:访问视图中ViewController的整数值?,ios,objective-c,uiview,uiviewcontroller,Ios,Objective C,Uiview,Uiviewcontroller,我试图在UIView类中启动一个名为“ClockView”的NSTimer,该类使用一个方法作为选择器,该选择器操纵ViewController“ClockViewController”中声明的初始浮点 我的ClockViewController将int timerIntWhite声明为整数(例如500)。My ClockView需要-(void)start方法的此值,该方法每秒运行一个名为-(void)updateWhiteClock的方法: - (void)start { time

我试图在UIView类中启动一个名为“ClockView”的NSTimer,该类使用一个方法作为选择器,该选择器操纵ViewController“ClockViewController”中声明的初始浮点

我的ClockViewController将
int timerIntWhite
声明为整数(例如500)。My ClockView需要
-(void)start
方法的此值,该方法每秒运行一个名为
-(void)updateWhiteClock
的方法:

- (void)start {

    timerIntWhite = PLEASE HELP ME AT THIS POINT!;
    randomTimerWhite = [NSTimer scheduledTimerWithTimeInterval:(1.0/1.0)target:self selector:@selector(updateWhiteClock) userInfo:nil repeats:YES];
}
是否可以在ClockView中访问ClockViewController的整数?

请尝试以下操作:

ClockView
中,也声明变量(属性)
int-timerIntWhite
并在视图创建后从视图控制器中设置此变量,例如,在
viewDidLoad

-(void)viewDidLoad {

    [super viewDidLoad];

    self.view.timerIntWhite = self.timerIntWhite;
}
执行此操作后,
ClockView
可以访问自己的
timerIntWhite
变量:

- (void)start {

    timerIntWhite = self.timerIntWhite;
    randomTimerWhite = [NSTimer scheduledTimerWithTimeInterval:(1.0/1.0)target:self selector:@selector(updateWhiteClock) userInfo:nil repeats:YES];
}
我假设您的
ClockViewController
类知道它的视图是-A
ClockView
。这是非常重要的!否则你会得到警告

我还想提到的是,根据MVC规则,如果您的
ClockViewController
类负责
NSTimer
,这是一个更好的主意。视图应仅用于向用户显示信息


希望这有帮助

非常感谢!我刚刚意识到,我的
ClockView
中声明的许多方法也可以通过使用
ClockView
中的属性在我的
ClockViewController
中声明,并在我的
ClockViewController
中调用它们。