/ / Uiactionsheet पर रद्द करें बटन सेट करने से अंतिम आइटम गायब हो जाता है - उद्देश्य-सी, uiactionsheet, गतिशील रूप से जेनरेट, रद्द-बटन

Uiactionsheet पर रद्द करें बटन सेट करने से अंतिम आइटम गायब हो जाता है - उद्देश्य-सी, uiactionsheet, गतिशील रूप से जेनरेट, रद्द-बटन

मैं गतिशील रूप से बटन जोड़ रहा हूँUIActionSheet। मैं एक "रद्द करें" बटन जोड़ने के साथ समाप्त होता हूं, लेकिन यदि मैं या तो विधि सेट कैंसलबटन इंडेक्स का उपयोग करता हूं या मैन्युअल रूप से इंडेक्स सेट करता हूं, तो "रद्द करें" प्रदर्शित नहीं होता है। अगर मैं setCancelButtonIndex कॉल को बहिष्कृत करता हूं, तो रद्द करें (हाइलाइट के बिना, बिल्कुल)। क्या कोई फुटनोट है जिसे मैंने याद किया है?

    UIActionSheet *actionSheet;
actionSheet = [[UIActionSheet alloc] initWithTitle:@"What do you want to do?" delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil];
for (NSString *title in arrayButtons) {
[actionSheet addButtonWithTitle:title];
}
[actionSheet addButtonWithTitle:@"Cancel"];
[actionSheet setCancelButtonIndex:[arrayButtons count]-1];
[actionSheet setDestructiveButtonIndex:0];
[actionSheet showInView:self.view];

उत्तर:

उत्तर № 1 के लिए 1

प्रक्रिया -addButtonWithTitle: बटन सूचकांक देता है। तो आपको इस तरह से करना चाहिए:

UIActionSheet *actionSheet = [[UIActionSheet alloc] init];
[actionSheet setTitle:@"What do you want to do?"];
[actionSheet setDelegate:self];
for (NSString *title in arrayButtons) {
[actionSheet addButtonWithTitle:title];
}
[actionSheet setCancelButtonIndex:[actionSheet addButtonWithTitle:@"Cancel"]];
[actionSheet setDestructiveButtonIndex:0];
[actionSheet showInView:self.view];