NSLog
正在返回輸出'Null'而不是字符串,我預期這是一個私人實例變量等問題,但由於我不熟悉Object-面向對象編程,我不能確定原因。NSLog返回null而不是字符串
//The viewDidLoad method in MainGameDisplay.m:
- (void)viewDidLoad
{
[super viewDidLoad];
Engine *engine = [[Engine alloc] init];
[engine setPlayerName: viewController];
}
字符串由UITextField
進入,物業是
//ViewController.h
@property (strong, nonatomic) IBOutlet UITextField *PlayerNameTextView;
的方法工作正常,如果[engine setPlayerName: self]
放置返回正確的字符串到ViewController
,但是*PlayerNameTextView
所在位置以外的任何地方都會導致此問題。
//Engine.m
@implementation Engine
{
ViewController *firstPage;
}
NSString *Player;
-(void) setPlayerName: (ViewController *) name
{
Player = [[name PlayerNameTextView] text];
NSLog(@"%@", Player);
}
有問題的NSLog在哪裏? –
而'Player'是在實現中聲明的,這使得它成爲某種C全局或靜態的,我想。所以我不知道你希望如何在別處引用它。 –
問題是NSLog(@「%@」,Player);返回null – PappaSmalls