我有一个 NSObject 类,它有一个名为 tweetTitle 的 NSString;
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。
这是FirstViewController FirstViewController.h的代码
@interface TweetViewController : UIViewController <UITextViewDelegate>
@property (strong, nonatomic) NSString * tweet;
@property (weak, nonatomic) IBOutlet UITextView *tvTweetTitle;
- (IBAction)btnCreateTweet:(id)sender;
@end
第一视图控制器.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];
}
我的问题是:如何在第二个和第三个 ViewController 中使用 tweetTitle 而无需创建 TweetDesc 类的新实例并在每个 ViewControler 中再次设置 tweetTitle。
在我尝试的第二个视图控制器中:
TweetDesc * td = [[TweetDesc alloc]init];
NSLog(@"%@", td.tweetTitle);
但我得到空值,似乎它已经发布或其他东西。
我在这里先向您的帮助表示感谢。