यदि मैं पहले से कॉन्फ़िगर नहीं किया गया है, तो मैं पासवर्ड के लिए उपयोगकर्ताओं से पूछने के लिए स्टार्टअप पर एक मोडल UITableView का उपयोग करना चाहता हूं। हालांकि, uitableview को कॉल करने का आदेश ViewDidLoad के अंदर काम नहीं कर रहा है।प्रस्तुति पर मॉडेल व्यू कंट्रोलर काम कर सकते हैं?
स्टार्टअप कोड:
- (void)viewDidLoad {
rootViewController = [[SettingsController alloc]
initWithStyle:UITableViewStyleGrouped];
navigationController = [[UINavigationController alloc]
initWithRootViewController:rootViewController];
// place where code doesn't work
//[self presentModalViewController:navigationController animated:YES];
}
हालांकि, एक ही कोड ठीक काम करता है जब बाद में एक बटन से बुलाया:
- (IBAction)settingsPressed:(id)sender{
[self presentModalViewController:navigationController animated:YES];
}
संबंधित प्रश्न: मैं कैसे (ऊपरी स्तर पर) भावना है जब UITableView ने छोड़ने के लिए कमांड का उपयोग किया है?
[self.parentViewController dismissModalViewControllerAnimated:YES];
ने विज़ुअल विल्लएपियर को आजमाया और व्यूडाइलोड के रूप में वही खराब प्रभाव प्राप्त किया। जब मैं [self presentModalViewController का उपयोग करता हूं: नेविगेशन नियंत्रक एनिमेटेड: हाँ]; आवेदन में डिफफिशिश लॉन्चिंग, मुझे "सिगबर्ट" मिलता है। मैं शायद इसे गलत कह रहा हूं – BankStrong
इसे 'applicationDidFinishLaunching' से कॉल नहीं कर सकता - यह प्रतिनिधि से संबंधित एक तरीका है, जो व्यू कंट्रोलर नहीं है। आपको रूट व्यू कंट्रोलर ऑब्जेक्ट की आवश्यकता है। अक्सर यह आपके लिए एक्सकोड द्वारा स्वचालित रूप से बनाया गया है; अपने ऐप प्रकार के आधार पर 'व्यू कंट्रोलर', 'रूट कंट्रोलर' या 'टैबबार नियंत्रक' नामक संश्लेषित संपत्ति की तलाश करें। – Tim
यह अस्पष्ट हो सकता है (क्षमा करें!); मेरा मतलब था 'applicationDidFinishLaunching' में आप' [self present ...] 'नहीं चला सकते हैं - इसके बजाय आपको अपने व्यू कंट्रोलर के नाम के आधार पर '[self.viewController present ...]' या इसी तरह चलाने के लिए है वस्तु। – Tim