2012-02-17 6 views
0

かなりの量のボタンを含むビューが1つあり、すべて新しいビューにつながります。私はそれを入力するために押されたボタンに応じて、新しいビューに異なるデータを表示したいと思います。ボタンに依存する新しいビューでデータを読み込むXcode

正しい方向のポイントはすばらしいでしょう。

+0

iPhoneで作業していますか?いくつかのコードを投稿できますか? –

+0

イエスiOS5とストーリーボード –

+0

すべてのボタンは同じ新しい表示をロードしますか?ビューコントローラを使用していますか?そのさまざまなボタン(タグ、ラベル付き)をどのように区別しますか? – sch

答えて

2

ボタンをセグを使用して新しいView Controllerに接続します。次に、ボタンを含むビューコントローラにメソッドprepareForSegue:sender:を実装することができます。この方法では、新しいビューをカスタマイズするために必要なデータを使用して、新しいビューのプロパティを設定できます。どのボタンがクリックされたかを判断する必要があります。これを行う1つの方法は、各ボタンのtagプロパティを異なる値(IBまたはコード内)に設定することです。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    // sender is the button that was clicked 
    // you could set the tag property of the UIButtons when they are created 
    // and inspect that property here to determine which was clicked 

    // vc will be the view controller you are segueing to 
    YourViewController *vc = [segue destinationViewController]; 

    // set properies of youe next view controller with data needed by new view 
    switch (sender.tag) { 
     case 0: // first button 
      vc.myProperty = someData; 
      break; 
     case 1: // second button 
      vc.myProperty = someOtherData; 
      break; 

     etc... 
    } 

} 
+0

右、私はこれを撃つでしょう。私が必要とするものを正確に見て...私はどのように投稿することができます –

+0

また...ありがとう –

1

は、私はあなたが(あなたはそれらのタグは、それらを区別するために属性を設定することができ、それらを知っているsender.tag値を取得クリックされたものをボタンに応じて、その後、

- (IBAction) buttonClicked: (UIButton*) sender; 

のような関数にあなたのボタンをリンクする必要があると思いますどのボタンがクリックされたか)、新しいビューで対応する関数を呼び出してデータを更新するだけです。

+0

ええ、これは行く方法だと分かっています...ちょうどそこに着く方法を正確には分かりません... –