0

2 つのクラスがあります。1 つは addAlarm で、2 番目は Name です。

今のところ、私は addAlarm にいます (addAlarm は UITableViewController のサブクラスです)。行を選択すると、以下のように Name クラスに移動します。

        Name *ob = [[Name alloc] initWithStyle:UITableViewStyleGrouped];
        [self.navigationController pushViewController:ob animated:YES];

        [ob release];
        ob = nil;

次に、デフォルトで addAlarm を戻るボタンとして持つ UINavigationBar があり、Name は UITableViewController のサブクラスでもあります

Name で addAlarm の戻るボタンをクリックすると、addAlarm に戻り、その viewWillAppear メソッドが呼び出されますが、その後呼び出します。

         - (void)viewDidUnload

         - (void)dealloc

名前クラスの。

addAlarm の ViewWillApear を実行した後に Name のメソッドを呼び出す理由がわかりません。

4

1 に答える 1

1

dealloc メソッドでデータを渡す代わりに、以下のメソッドでデータを渡すことができます。

-(void)viewWillDisappear:(BOOL)animated{

}

別の方法は、以下のように appDelegate ファイルに保存することです。

appDelegate.h ファイル内

NSString *strName;

@property (非アトミック、保持) NSString *strName;

appDelegate.m ファイル内

@synthesize strName;

これで、以下のように NameController に Application のオブジェクトを作成できます

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate]; 

そして、このように値を保存します

appDelegate.strName = @"Value to be passed to addAlarm View"

この助けを願っています。

于 2011-07-16T12:28:15.787 に答える