objective-c – 如何从另一个视图控制器访问变量值?

objective-c – 如何从另一个视图控制器访问变量值?,第1张

概述我在一个视图控制器中有一个整数变量(时间),我在另一个视图控制器中需要它的值.这是代码: MediaMeterViewController // TRP - On Touch Down event, start the timer-(IBAction) startTimer{ time = 0; // TRP - Start a timer timer = [NSTim 我在一个视图控制器中有一个整数变量(时间),我在另一个视图控制器中需要它的值.这是代码:

MediaMeterVIEwController

// TRP - On touch Down event,start the timer-(IBAction) startTimer{    time = 0;    // TRP - Start a timer    timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES];    [timer retain];     // TRP - Retain timer so it is not accIDentally deallocated}// TRP - Method to update the timer display-(voID)updateTimer{    time++;//  NSLog(@"Seconds: %i ",time);     if (NUM_SECONDS == time)        [timer invalIDate];}// TRP - On touch Up InsIDe event,stop the timer,decIDe stress level,display results-(IBAction) btn_MediaMeterResults{    [timer invalIDate];    NSLog(@"Seconds: %i ",time);    ResultsVIEwController *resultsVIEw = [[ResultsVIEwController alloc] initWithNibname:@"ResultsVIEwController" bundle:nil];    [self.vIEw addSubvIEw:resultsVIEw.vIEw];}

在ResultsVIEwController中,我想根据其值处理时间

ResultsVIEwController

- (voID)vIEwDIDLoad {    if(time < 3)       {// Do something}    else if ((time > 3) && (time < 6))       {// Do something else}//etc...    [super vIEwDIDLoad];}

我有点不清楚@property和@synthesize何时是必要的.在这种情况下是这样的吗?任何帮助将不胜感激.

谢谢!
托马斯

解决方法 在MediaMeterVIEwController中将时间声明为属性:

@property (nonatomic) NSInteger time;

每当您需要访问另一个对象中的实例变量时,您应该将实例变量声明为属性,并且在声明属性时,必须始终使用@synthesize(以合成该属性的getter和setter).

另请注意,在MediaMeterVIEwController中设置时间时,必须始终使用self.time而不是time.例如,time = 0;应该是self.time = 0;.

要从ResultsVIEwController访问时间,您可以执行以下 *** 作:

- (voID)vIEwDIDLoad {    [super vIEwDIDLoad];    if (mmvc.time < 3)    {        // Do something     }    else if ((mmvc.time > 3) && (mmvc.time < 6))    {    // Do something else    }    // etc...    }

其中mmvc是对MediaMeterVIEwController对象的引用.希望这可以帮助.

总结

以上是内存溢出为你收集整理的objective-c – 如何从另一个视图控制器访问变量值?全部内容,希望文章能够帮你解决objective-c – 如何从另一个视图控制器访问变量值?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1068070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存