0

我的应用程序中有两个 UIImageView,它们在被触摸时都会调用同一个 viewController。但是,我试图找出一种方法来区分一个 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像 Jamie 在评论中提到的那样制作这些实例。

于 2013-08-28T20:06:45.777 回答