2015-11-24 13 views
5

किसी को भी एक UIAlertViewController जो tvOS पर "मेनू" बटन पर क्लिक करके खारिज कर दिया करने के लिए प्रस्तुत किया गया है सक्षम करने के लिए कैसे पता है?UIAlertController मेनू बटन के साथ tvOS पर खारिज

एप्पल टीवी 4 पर सेटिंग ऐप्लिकेशन है कि व्यवहार की सुविधा है, लेकिन यह मेरे एप्लिकेशन में डिफ़ॉल्ट रूप से काम नहीं करता। मैं उपयोगकर्ता द्वारा किए जा सकने वाले कार्यों को बनाने के लिए निम्न कोड का उपयोग करता हूं, लेकिन उसे रिमोट पर "मेनू" बटन दबाकर कुछ भी नहीं चुनना और वापस जाने की अनुमति देना चाहूंगा।

UIAlertController* alert = [UIAlertController alertControllerWithTitle:@"Alert" 
          message:@"Please make a choice" 
          preferredStyle:UIAlertControllerStyleAlert]; 

UIAlertAction* action1 = [UIAlertAction actionWithTitle:@"Option 1" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}]; 
[alert addAction:action1]; 
UIAlertAction* action2 = [UIAlertAction actionWithTitle:@"Option 2" style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {}]; 
[alert addAction:action2]; 

[self presentViewController:alert animated:YES completion:nil]; 

अग्रिम धन्यवाद।

उत्तर

9

@ion: आपके उत्तर ने मुझे सही उत्तर दिया।

आप वास्तव में अपेक्षा के अनुरूप काम और UIAlertViewController बाहर निकलने के लिए मेनू बटन के लिए शैली UIAlertActionStyleCancel के साथ एक कार्रवाई जोड़ने की जरूरत है। इस रद्द कार्रवाई विकल्प (कोई बटन, सेटिंग ऐप्स में) की तरह से छिपा हुआ है, बस अपनी शीर्षक और हैंडलर नहीं के बराबर करने के लिए सेट:

[alert addAction:[UIAlertAction actionWithTitle:nil style:UIAlertActionStyleCancel handler:nil]]; 
+2

मैं भी एक ही काम करने की कोशिश कर रहा है और ऊपर दिए गए कोड का उपयोग किया है, लेकिन अब मेनू बटन न केवल मेरे अलर्ट कंट्रोलर को रद्द कर रहा है, बल्कि इसके नीचे व्यू कंट्रोलर को भी खारिज कर रहा है। कोई सुझाव? – Mel

9

आप आपकी अपेक्षा के मेनू बटन काम करने के लिए शैली UIAlertActionStyleCancel के नियंत्रक में कम से कम एक UIAlertAction होना आवश्यक है।

0

स्विफ्ट में:

alertController.addAction(UIAlertAction(title: nil, style: .cancel, handler: nil)) 
संबंधित मुद्दे