0

データベースから取得した行のデータで UIScrollView を表示する iPhone アプリを作成しています。

ViewController1:

-(void)viewDidLoad 
{
    [super viewDidLoad];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(eventHandler:) name:@"onEvent" object:nil];
}

- (IBAction) eventHandler:(NSNotification *) notification {
    [RequestRowView initialize];
}

RequestRowView で:

-(IBAction)onSelected:(id)送信者 {

    [[NSNotificationCenter defaultCenter] postNotificationName:@"onEvent" object:nil];

    Globals* global = [Globals getInstance];
    global.fulfillRequestLocationName = name;
    global.fulfillRequestCityStateZip = cityStateZip;
    global.fulfillRequestExpirationDate = endDateTime;

    NSLog(@"global vars are %@ %@ %@", global.fulfillRequestLocationName, global.fulfillRequestCityStateZip, global.fulfillRequestExpirationDate);   
}

UIScrollView の行は正常に表示されますが、行をクリックするたびに NSLog が実行されます。

私の質問は次のとおりです。別のビューにセグエするにはどうすればよいですか?

いくつかのことの中で、[performSegueWithIdentifier] を使用して IBAction 関数を実行するクラスに隠しボタンを作成しましたが、受信クラスにその識別子がないというエラーが発生します。

これは NSNotificationCenter で理解できない問題ですか、それともボタンを作成するときにクラスのインスタンスを間違って呼び出していますか?

4

1 に答える 1

0

とった!View Controller ( http://www.youtube.com/watch?v=XApYtAlRDVE )でカスタム ボタン セグエを作成し、eventHandler 関数で [self nextButton] を定義しました。

ただし、次のビューに移動すると、変数はすぐには表示されません。クリックして「ホーム」に戻り、行を再度選択すると、変数がそれぞれのラベルに表示されます。

これは、グローバル変数が Xcode 内で定義されている方法と関係がありますか?

于 2013-08-05T17:40:28.897 に答える