Pergunta

A UIActionSheet é initalized com:

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

Eu estou tentando passar um NSArray na mensagem "otherButtonTitles".

Eu tentei passar um NSArray usando:

otherButtonTitles:[array]

mas a mensagem está esperando uma lista de NSStrings.

A única maneira que eu posso pensar de quebrar um NSArray em um conjunto de NSStrings é usando componentsJoinedByString mas dá-me uma vírgula lista que é um único NSString separados.

Um ponto na direção certa seria apreciada.

Foi útil?

Solução

Esse método leva varargs. Não há uma maneira muito fácil de fazer a conversão seu descrevendo, e definitivamente não vale a pena tentar neste caso. Este é apenas um método de conveniência.

Apenas uso -init e configure tudo com os acessores (-setDelegate:, -addButtonWithTitle:, -setCancelButtonIndex:, etc.)

Outras dicas

Eu apenas usei a resposta de uma pergunta semelhante para fazer isso. Funcionou muito bem para mim.

Use NSArray para especificar otherButtonTitles?

Infelizmente, você não pode fazer isso em Objective-C.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top