另一个类中的对象的值未在类中设置

时间:2012-02-21 12:24:47

标签: objective-c set

在课堂上,我希望从另一个视图中为标签设定值。

分配值的第一个类:

#import "ViewDetailPoinmap.h"
...

NSLog(@"On a cliqué sur : %@",[NSNumber numberWithInt:sender.tag]);
//On a cliqué sur : 2130

ViewDetailPoinmap *detailPoint = [[ViewDetailPoinmap alloc] init];
detailPoint.idPoint =  [NSNumber numberWithInt:sender.tag];
detailPoint.txtIDPoint.text = [NSString stringWithFormat:@"%@", [NSNumber numberWithInt:sender.tag]];

另一个类(ViewDetailPoinmap.h):

@interface ViewDetailPoinmap : UIViewController{
NSNumber *idPoint;
IBOutlet UILabel *txtIDPoint;
}
@property (assign, nonatomic) IBOutlet UILabel *txtIDPoint;
@property (nonatomic, assign) NSNumber *idPoint;
@end

(ViewDetailPoinmap.m)

...
@synthesize txtIDPoint;
@synthesize idPoint;


...

- (void)viewDidLoad
{
    [super viewDidLoad];
    NSLog(@"ON arrive sur la page détail du point : %@",idPoint);
    //ON arrive sur la page détail du point : (null)

}

问题出在哪里?

2 个答案:

答案 0 :(得分:1)

您将属性标记为assign,它引用了第一类中的变量。可能该变量已经自动释放。

detailPoint.idPoint =  [NSNumber numberWithInt:sender.tag]; // here you assign 

尝试在此处更改@property (nonatomic, assign) NSNumber *idPoint;分配给保留

答案 1 :(得分:0)

您在哪里创建txtIDPoint实例?您已经显示了尝试设置文本的位置,但除非您已初始化标签本身nil,这与您描述的症状一致。