我应该在iOS中制作我的ivars属性吗?

mar*_*oko 0 properties ios ivars

就在你认为自己明白了什么的时候,你却没有!:)

我知道如果我将变量设为属性,我可以在类中的任何位置访问它,甚至可以从该类外部设置它.

我想如果我不需要它我可以把它变成一个伊娃.所以我有一个大约5个UILabel的viewcontroller.所以在它的viewDidLoad我说:

pharmacyName.text = self.receivedLocation.name;
    pharmacyTel1.text = @"556-7843";
    pharmacyTel2.text = @"991-2345";
    pharmacyTel3.text = @"800-0001";
Run Code Online (Sandbox Code Playgroud)

当我在.h文件中声明它们时:

@interface DetailViewController : UIViewController{
    IBOutlet UILabel *pharmacyName;
    IBOutlet UILabel *pharmacyTel1;
    IBOutlet UILabel *pharmacyTel2;
    IBOutlet UILabel *pharmacyTel3;
}

@property (nonatomic,strong) MyLocation *receivedLocation;

@end
Run Code Online (Sandbox Code Playgroud)

Bhu*_*esh 5

不可以.将ivar创建为财产并非强制性.如果您不想在课外访问它,请按原样使用.在ARC中,您还可以声明您的IBOutlet如下:

@interface DetailViewController : UIViewController{
    __weak IBOutlet UILabel *pharmacyName;
    __weak IBOutlet UILabel *pharmacyTel1;
    __weak IBOutlet UILabel *pharmacyTel2;
    __weak IBOutlet UILabel *pharmacyTel3;
}
Run Code Online (Sandbox Code Playgroud)

这将保留一周的网点参考.这里是__weak和strong的详细信息