Estoy usando UITapGestureRecognizer
porque estoy usando un UIScrollView
que actúa como un contenedor para mi UILabel
s. Básicamente, estoy tratando de usar un método de acción con argumentos para poder, por ejemplo, envíe myLabel.tag
valor al método de acción para saber qué acción tomar dependiendo de qué UILabel haya sido activado por un toque.UITapGestureRecognizer initWithTarget: action: ¿método para tomar argumentos?
Una forma de hacerlo es tener tantos métodos de acción como UILabel
s, pero eso no es muy "bonito" en código. Lo que me gustaría lograr es solo tener un método de acción con declaraciones de cambio.
Es esto posible o voy a tener que hacerlo de esta manera (suspiro):
UITapGestureRecognizer *myLabel1Tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabel1Tap)];
[myLabel1Tap addGestureRecognizer:myLabel1Tap];
UITapGestureRecognizer *myLabel2Tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabel2Tap)];
[myLabel1Tap addGestureRecognizer:myLabel2Tap];
UITapGestureRecognizer *myLabelNTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(myLabelNTap)];
[myLabel1Tap addGestureRecognizer:myLabelNTap];
- (void)myLabel1Tap {
// Perform action
}
- (void)myLabel2Tap {
// Perform action
}
- (void)myLabelNTap {
// Perform action
}
no tienen Olvidaste la semicolumna en el selector? – alecnash