objective-c – 在前瞻课程中找不到财产
发布时间:2020-12-14 19:56:16 所属栏目:百科 来源:网络整理
导读:我遇到了一个困扰我一段时间的问题 – 特别是因为它对我没有任何意义. Xcode似乎没有找到我的对象的一些属性,即使它们被正确声明.这里有一些代码: .h文件 @interface Start1ViewController : UIViewController { NSString *updatedStatus; NSString *update
我遇到了一个困扰我一段时间的问题 – 特别是因为它对我没有任何意义.
Xcode似乎没有找到我的对象的一些属性,即使它们被正确声明.这里有一些代码: .h文件 @interface Start1ViewController : UIViewController { NSString *updatedStatus; NSString *updatedTime; } @property (retain,nonatomic) NSString *updatedTime; @property (retain,nonatomic) NSString *updatedStatus; 并且各自在.m中合成 #import "Start1ViewController.h" @implementation Start1ViewController @synthesize updatedStatus,updatedTime; 我想从持有上面类的实例的对象访问这些属性: #import <UIKit/UIKit.h> @class Start1ViewController; @interface PartyPickerViewController : UIViewController { IBOutlet UIDatePicker *datePicker; Start1ViewController *start1ViewController; } .M -(IBAction)buttonPressed:(id)sender{ NSDate *selected =[datePicker date]; NSDateFormatter *timeFormatter = [[NSDateFormatter alloc] init]; [timeFormatter setDateFormat:@"HH:mm"]; NSString *dateString = [timeFormatter stringFromDate:selected]; [start1ViewController setUpdatedStatus:@"Party"]; [start1ViewController setUpdatedTime:dateString]; [self.navigationController popViewControllerAnimated:YES]; } Xcode告诉我setUpdatedStatus和setUpdatedTime不存在……而且它们不起作用.我试过用 我之前遇到过这个问题,那个时候我通过在.-notation和明确使用setter方法之间切换多次来实现它的工作,但即使在其他情况下它确实有效,我仍然得到方法的警告和使用.notation时“找不到属性” 有问题的属性是简单的NSStrings,所以我怀疑它可能是另一个类不知道NSString类的问题? 在此先感谢您的帮助! =) 解决方法
你在PartyPickerViewController.m中导入了Start1ViewController.h吗? 因为当您在接口@class中使用时,您只需向编译器承诺有一个名为Start1ViewController的类. 但之后你需要在你的实现中导入Start1ViewController.h,以便生成Start1ViewController.h,它的属性和方法对其他类是可见的.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |