Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 无法设置自定义对象的值_Ios_Objective C - Fatal编程技术网

Ios 无法设置自定义对象的值

Ios 无法设置自定义对象的值,ios,objective-c,Ios,Objective C,我有一个自定义数据对象,用于存储JSON请求传递的信息,但是当我尝试设置值时,所有内容仍然为空 我对iOS开发还是很陌生,有更多的Java背景,所以我确信我只是错过了一些东西或者做了一些错误的事情 我的班级: 建筑位置 #import <Foundation/Foundation.h> @interface BuildingLocation : NSObject { NSString *_name; NSString *_description; NSStr

我有一个自定义数据对象,用于存储JSON请求传递的信息,但是当我尝试设置值时,所有内容仍然为空

我对iOS开发还是很陌生,有更多的Java背景,所以我确信我只是错过了一些东西或者做了一些错误的事情

我的班级:

建筑位置

#import <Foundation/Foundation.h>

@interface BuildingLocation : NSObject {
    NSString *_name;
    NSString *_description;
    NSString *_URL;
    float  _Long;
    float  _Lat;
    NSString *_Town;
    NSString *_Type;
    NSString *_Premium;
}

@property (nonatomic, copy) NSString *name;
@property (nonatomic, copy) NSString *description;
@property (nonatomic, copy) NSString *URL;
@property (nonatomic) float Long;
@property (nonatomic) float Lat;
@property (nonatomic, copy) NSString *Town;
@property (nonatomic, copy) NSString *Type;
@property (nonatomic, copy) NSString *Premium;

- (id)init:(NSString *)name description:(NSString *)description URL:(NSString *)URL Long:(float)Long Lat:(float)Lat Town:(NSString *)Town Type:(NSString *)Type Premium:(NSString *)Premium;

@end
如何在代码中设置值:

BuildingLocation *locationObject;
                locationObject.name = [location objectForKey:@"Name"];
                locationObject.description = [location objectForKey:@"Decription"];
                locationObject.URL = [location objectForKey:@"URL"];
                locationObject.Long = [[location objectForKey:@"Longitude"] floatValue];
                locationObject.Lat = [[location objectForKey:@"Lat"] floatValue];
                locationObject.Town = [location objectForKey:@"Town"];
                locationObject.Type = [location objectForKey:@"Type"];
                locationObject.Premium = [location objectForKey:@"Premium"];

                NSLog(@"Name before: %@", locationObject.name);

NSLog将locationObject.name的值设置为(null)

永远不会分配和初始化
locationObject
对象

试试这个:

BuildingLocation *locationObject = [[BuildingLocation alloc] init]; // allocate and initialize this object.
//  ...
NSLog(@"Name before: %@", locationObject.name);
BuildingLocation *locationObject = [[BuildingLocation alloc] init]; // allocate and initialize this object.
//  ...
NSLog(@"Name before: %@", locationObject.name);