tweetTitle という NSString を持つ NSObject クラスがあります。
TweetDesc.h ファイル
#import <Foundation/Foundation.h>
@interface TweetDesc : NSObject
@property (strong, nonatomic) NSString * tweetTitle;
-(void) setFullTweetTitle:(NSString *) fullTweetTitle;
@end
TweetDesc.m ファイル
@implementation TweetDesc
@synthesize tweetTitle;
-(void) setFullTweetTitle:(NSString *) fullTweetTitle
{
self.tweetTitle = fullTweetTitle;
}
@end
FirstViewController、SecondViewController、ThirdViewController の 3 つのクラス (View Controller) があります。
FirstViewController FirstViewController.h のコードは次のとおりです。
@interface TweetViewController : UIViewController <UITextViewDelegate>
@property (strong, nonatomic) NSString * tweet;
@property (weak, nonatomic) IBOutlet UITextView *tvTweetTitle;
- (IBAction)btnCreateTweet:(id)sender;
@end
FirstViewController.m
@implementation TweetViewController
@synthesize tvTweetTitle, tweet;
- (void)viewDidLoad
{
[super viewDidLoad];
self.tvTweetTitle.delegate = self;
}
- (IBAction)btnCreateTweet:(id)sender
{
tweet = [[NSString alloc]initWithFormat:@"%@", tvTweetTitle.text];
TweetDesc * td = [[TweetDesc alloc]init];
[td setFullTweetTitle:tweet];
SecondViewController * svc = [self.storyboard instantiateViewControllerWithIdentifier:@"SecondViewController"];
[self.navigationController pushViewController:ivc animated:YES];
}
私の質問は次のとおりです。TweetDesc クラスの新しいインスタンスを作成せずに、2 番目と 3 番目の ViewController で tweetTitle を使用し、すべての ViewController で tweetTitle を再度設定するにはどうすればよいですか。
私が試した2番目のView Controllerで:
TweetDesc * td = [[TweetDesc alloc]init];
NSLog(@"%@", td.tweetTitle);
しかし、私はnullを取得します。それはすでにリリースされているか、何か他のものです。
事前に助けてくれてありがとう。