2011-08-30 10 views
6

Próbuję utworzyć UIAlertView, który ma 3 opcje i nie ma przycisku "anuluj", ale gdy to zrobię, zawsze będzie styl "Przycisk 3" jako przycisk anulowania. Czy istnieje sposób, aby tego uniknąć?UIAlertView bez przycisku Anuluj?

UIAlertView *alertView= [[UIAlertView alloc] initWithTitle:@"Select One" message:nil delegate:self cancelButtonTitle:nil otherButtonTitles:@"Button 1",@"Button 2", @"Button3", nil]; 
+0

Z dokumentacji wygląda na to, że nie ma sposobu na zaskoczenie. Nadal gram z tym, ale wygląda na to, że przycisk anulowania domyślnie przyjmuje jeden z pozostałych przycisków. –

+0

W tym momencie poszedłem z arkuszem akcji. Nie tak jak chcę to zrobić, więc jeśli ktoś wie, jak zrobić widok Alert View, prosimy o dzwonek. – Chris

Odpowiedz

6

This to post o tym, jak zmienić pozycję przycisku Anuluj. Ponadto, jeśli masz tylko 1 przycisk w UIAlertView, następnie ustawienie:

_alertView.cancelButtonIndex = -1; 

Uczyni przycisk pojawia się jako nie-anuluj typu. Z tego co wiem, gdy masz więcej niż jeden przycisk, UIAlertView wymusza na ostatnim przycisku przycisk anulowania. Przejrzenie reference może dać ci wskazówkę, jak ustawić właściwości, aby to osiągnąć, ale nie jestem zbyt pewny. Mam nadzieję, że pomaga!

7

Zrobiłem inaczej, podając argument cancelButtonTitle jako nil.

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Title" 
          message:@"Message here" 
          delegate:self 
          cancelButtonTitle:nil 
          otherButtonTitles:@"OK", nil]; 
+0

Dlaczego moja odpowiedź była błędna? –