0

ストーリーボードに 2 つのビュー コントローラーがあります。VC1 には 3 つのボタンがあり、VC2 には画像ビューがあります。

VC1 でボタン A をクリックすると、VC2 に A の画像が表示されます。VC1 でボタン B をクリックすると、VC2 に B の画像が表示されます。

VC2 は、VC1 でクリックされたボタンをどのように知ることができますか?

4

3 に答える 3

0

あなたはそれを行うことができますセグエ:

  1. ナビゲーションコントローラーの追加:[VC1]、[エディター]>[埋め込み]>[ナビゲーションコントローラー]の順に選択します
  2. ボタンAからVC2へ、ボタンBからVC2へ、ボタンAからVC2lへのセグエ接続を与える

  3. セグエ識別子SegueA、SegueB、SegueCをそれぞれ入力します。

  4. VC1で次のメソッドを記述します。

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

ImageViewController *vc2=(ImageViewController*)[ segue destinationViewController];

if([[segue identifier] isEqualToString:@"SegueA"]){

vc2.imageView.image =[UIImage imageNamed:@"a.png"];

}else
if([[segue identifier] isEqualToString:@"SegueB"]){

        vc2.imageView.image =[UIImage imageNamed:@"b.png"];

}else
if([[segue identifier] isEqualToString:@"SegueC"]){

vc2.imageView.image =[UIImage imageNamed:@"c.png"];

}

}

于 2013-02-05T18:47:34.217 に答える
0

VC2 でデリゲートを設定して、元の VC に情報を送り返します。「objective-c delegate」を Google で検索し、model-view-controller パラダイムを読んでください。

于 2013-02-05T18:08:37.737 に答える
0

これは簡単です!!!

1) VC2 で NSString プロパティを .h ファイルに作成し、それを .m ファイル "NSStringObjofVC2" に合成します 2) VC2 を VC1 .h ファイルにインポートします #import "VC2" を作成し、このようなオブジェクトを作成します

VC2 *vc2Obj;

3) viewdidload メソッドで

vc2Obj = [[VC2 割り当て] 初期化];

4)各ボタンをクリックしてこれを追加します

vc2Obj.NSStringObjofVC2 = @"differentImageNameforAll3Buttons.png";

VC2 でイメージを最後に使用する

UIImage の NSStringObjofVC2 をファイル名として使用するだけです

于 2013-02-05T18:42:51.760 に答える