0

私のアプリケーションには 2 つの UIImageView があり、どちらもタッチすると同じ viewController を呼び出します。ただし、ある UIImageView によって行われた呼び出しを別の UIImageView と区別する方法を見つけようとしています。各 UIImageView にタグ値を与えることが最善の方法であると考えています。

これを行ったので、必要なviewControllerを呼び出すときに実際に渡す方法を見つけようとしていますか? 私が呼び出している viewController は .xib ファイルから作成され、ストーリーボードに組み込まれたアプリケーションから呼び出されていることに注意してください。

UIImageView から viewController をインスタンス化して呼び出すメソッドは次のとおりです。

- (void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    
    _nextView = [[NextViewController alloc] initWithNibName:@"NextViewController" bundle:nil];
    [_nextView setDelegate:(id)self];
    [_nextView setSignatureDelegate:self];
    NextNavigationController *navigationController = [[NextNavigationController alloc] initWithRootViewController:_nextView];
    [self presentViewController:navigationController animated:YES completion:nil];
    
}

前述したように、viewController を表示する呼び出しを行うときに、呼び出し元の UIImageView からもタグ値を何らかの方法で渡したいと考えています。属性インスペクターを介して IB に設定した各 UIImageView のタグ値。これどうやってするの?

4

1 に答える 1

0

セットには、オブジェクトのtouchesインスタンスが含まれていますUITouch。このプロパティを使用しtouch.viewて、最初にタッチが発生したビュー オブジェクトを特定します。その参照を取得したら、そのビューのタグ値を取得できます。

ただしUIButton、ジェイミーがコメントで言及しているように、これらのインスタンスを作成することを検討してください。

于 2013-08-28T20:06:45.777 に答える