Question

A UIActionSheet is initalized with:

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

I am trying to pass an NSArray into the "otherButtonTitles" message.

I tried to pass an NSArray using:

otherButtonTitles:[array]

but the message is expecting a list of NSStrings.

The only way I can think of breaking an NSArray into a set of NSStrings is to by using componentsJoinedByString but it gives me a comma separated list that is a single NSString.

A point in the right direction would be appreciated.

Was it helpful?

Solution

That method takes varargs. There's not a really easy way to make the conversion your describing, and it definitely isn't worth the trouble to try in this case. This is just a convenience method.

Just use -init and configure everything with the accessors (-setDelegate:, -addButtonWithTitle:, -setCancelButtonIndex:, etc.)

OTHER TIPS

I just used the answer from a similar question to do this. It worked very well for me.

Use NSArray to specify otherButtonTitles?

Unfortunately, you can't do this in Objective-C.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top