Pregunta

Una hoja UIActionSheet se inicializa con:

UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Title" delegate:self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil 
otherButtonTitles:@"Button1", @"Button2", nil];

Estoy tratando de pasar un NSArray a los " otherButtonTitles " mensaje.

Traté de pasar un NSArray usando:

otherButtonTitles:[array]

pero el mensaje espera una lista de NSStrings.

La única forma en que puedo pensar en dividir un NSArray en un conjunto de NSStrings es mediante el uso de componentsJoinedByString, pero me da una lista separada por comas que es un único NSString.

Un punto en la dirección correcta sería apreciado.

¿Fue útil?

Solución

Ese método toma varargs. No hay una manera realmente fácil de hacer que la conversión sea su descripción, y definitivamente no vale la pena intentarlo en este caso. Esto es solo un método de conveniencia.

Simplemente use -init y configure todo con los accesos ( -setDelegate: , -addButtonWithTitle: , -setCancelButtonIndex: , etc.)

Otros consejos

Acabo de usar la respuesta de una pregunta similar para hacer esto. Funcionó muy bien para mí.

¿Utiliza NSArray para especificar otrosButtonTitles?

Desafortunadamente, usted no puede hacer esto en Objective-C.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top