當內存警告被觸發時,應用程序會試圖擺脫所有不再需要的對象。這可能會從第一個UIViewController中刪除偵聽器。
NSNotificationCenter的問題在於,沒有簡單的方法來檢查監聽器是否處於活動狀態。
我不知道這種情況是否適合使用NSNotification設置。很容易失去對什麼視圖控制器發送什麼消息的控制。
也許這個設置更容易(可能內存更安全)。它保持到第一的UIViewController對象
//
// SecondViewController.h
// test
//
//
#import <UIKit/UIKit.h>
#import "ViewController.h"
@interface SecondViewController : UIViewController
@property(nonatomic, retain) ViewController *parentViewController;
@end
與.m文件
//
// SecondViewController.m
// test
//
//
#import "SecondViewController.h"
@interface SecondViewController()
-(IBAction)buttonPressed:(id)sender;
@end
@implementation SecondViewController
@synthesize parentViewController;
-(IBAction)buttonPressed:(id)sender {
parentViewController.yourObject = @"your value";
}
-(void)dealloc {
[parentViewController release];
[super dealloc];
}
當按下第二視圖 - 控制做到這一點參考:
SecondViewController *vc = [[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil];
vc.parentViewController = self;
[self.navigationController pushViewController:vc animated:YES];
[vc release];
我們可以看到相關的代碼? – 2012-06-18 12:50:32