NSString を viewController に送信し、別の viewController からログに記録しようとしたところ、null になりました。私のコードは以下です
編集:すべてのコードを削除し、アプリケーションからコードを表示しています。私はまだ取得しているので (null)
HabitViewController.h
#import <UIKit/UIKit.h>
@interface HabitViewController : UITableViewController {
NSString *cellName2;
}
@property(nonatomic,retain) NSString *cellName2;
@end
HabitViewController.m
@synthesize cellName2;
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"%@",cellName2);
}
DetailViewController.h
#import <UIKit/UIKit.h>
@interface DetailViewController : UIViewController {
NSString *cellName;
}
@property(nonatomic,retain) NSString *cellName;
@end
DetailViewController.m
#import "DetailViewController.h"
#import "HabitViewController.h"
@end
@implementation DetailViewController
@synthesize cellName;
#pragma mark - Managing the detail item
- (void)viewDidLoad
{
[super viewDidLoad];
cellName = @"Hello World";
HabitViewController *obj = [[HabitViewController alloc] init];
obj.cellName2 = cellName;
}
私の問題とは何の関係もないので、多くのコードを省略しました。
編集
Jsdodgers のコメントと回答に基づいて、私の質問を更新しました。
習慣ViewController.h
#import <UIKit/UIKit.h>
@interface HabitViewController : UITableViewController {
}
@property(nonatomic,retain) NSString *cellName2;
@end
.m
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"%@",self.cellName2);
}
DetailViewController.h
#import <UIKit/UIKit.h>
@interface DetailViewController : UIViewController {
}
@property(nonatomic,retain) NSString *cellName;
@end
.m
@synthesize cellName;
- (void)viewDidLoad
{
[super viewDidLoad];
cellName = @"Hello World";
HabitViewController *obj = [[HabitViewController alloc] init];
obj.cellName2 = self.cellName;
[self configureView];
}
しかし、私はまだ成功していません。まだ言う (null)