दिलचस्प पोस्ट
क्रोम कास्ट एक्सटेंशन स्थापित नहीं है या गुप्त का उपयोग करते हुए Google क्रोम डास्ट प्रेषक त्रुटि पिकासो और कस्टम रूपांतरण ऑब्जेक्ट के साथ बड़ी छवियों को लोड करें स्पार्क एमएलबीबी मॉडल की सेवा कैसे करें? JasperReports में स्थिति के आधार पर टेक्स्ट फ़ील्ड डेटा रंग (अग्रभूमि रंग) बदलें एक पाश में टाइमआउट सेट करने के लिए फ़ंक्शन पास करना: हमेशा अंतिम मान? Android में "@ आईडी /" और "@ + id /" के बीच अंतर एसक्यूएल में शीर्ष और सीमा खोजशब्द के बीच अंतर आईई 9 कॉल्स के साथ jQuery के AJAX रिटर्न "प्रवेश निषेध है" लॉग के बिना एसक्यूएल में टेबल का बड़ा डेटा कैसे हटाना है? मैं एक बैकस्लैश के साथ एक कच्ची स्ट्रिंग क्यों नहीं समाप्त कर सकता हूं? क्या वंश के घटनाक्रम श्रोताओं को नष्ट किए बिना आंतरिक एचटीएमएल में शामिल करना संभव है? आईओएस पता लगाता है कि उपयोगकर्ता iPad पर है या नहीं दो जटिल वस्तुओं की तुलना करने का सर्वोत्तम तरीका लाइब्रेरी v21 को अपग्रेड करने के बाद प्राथमिकता में कोई एक्शनबार नहीं java.net.SocketException: सॉफ्टवेयर कनेक्शन का कारण बनता है: recv विफल

appdelegate में प्रारंभिक दृश्य नियंत्रक सेट – तेज

मैं ऐप्लिकेट से प्रारंभिक दृश्य नियंत्रक सेट करना चाहता हूं। मुझे वाकई बहुत अच्छा जवाब मिला, हालांकि यह उद्देश्य सी में है और आईएम को मुसीबत में एक ही चीज़ को प्राप्त करने में परेशानी होती है।

स्टोरीबोर्ड का उपयोग करते हुए प्रोग्राममिक रूप से प्रारंभिक दृश्य नियंत्रक सेट करें

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions { self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds]; UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; UIViewController *viewController = // determine the initial view controller here and instantiate it with [storyboard instantiateViewControllerWithIdentifier:<storyboard id>]; self.window.rootViewController = viewController; [self.window makeKeyAndVisible]; return YES; } 

मदद करने में सक्षम कोई भी?

मैं चाहूंगा कि प्रारंभिक दृश्य नियंत्रक को सशर्त बयान का उपयोग करते हुए कुछ शर्तों पर निर्भर होना चाहिए।

वेब के समाधान से एकत्रित समाधान "appdelegate में प्रारंभिक दृश्य नियंत्रक सेट – तेज"

मैंने इस धागे का इस्तेमाल मुझे उद्देश्य सी को तेजी से परिवर्तित करने में मदद करने के लिए किया था, और इसकी पूरी तरह से काम करना

झटपट और स्विफ्ट में एक दृश्य नियंत्रक पेश करें

स्विफ्ट 2 कोड:

 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { self.window = UIWindow(frame: UIScreen.mainScreen().bounds) let storyboard = UIStoryboard(name: "Main", bundle: nil) let initialViewController = storyboard.instantiateViewControllerWithIdentifier("LoginSignupVC") self.window?.rootViewController = initialViewController self.window?.makeKeyAndVisible() return true } 

स्विफ्ट 3 कोड:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard = UIStoryboard(name: "Main", bundle: nil) let initialViewController = storyboard.instantiateViewController(withIdentifier: "LoginSignupVC") self.window?.rootViewController = initialViewController self.window?.makeKeyAndVisible() return true } 

इसे इस्तेमाल करे। उदाहरण के लिए: आपको प्रारंभिक दृश्य नियंत्रक के रूप में UINavigationController उपयोग करना चाहिए। उसके बाद, आप स्टोरीबोर्ड से रूट के रूप में किसी भी दृश्य नियंत्रक को सेट कर सकते हैं।

  func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // Override point for customization after application launch. let storyboard:UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let navigationController:UINavigationController = storyboard.instantiateInitialViewController() as UINavigationController let rootViewController:UIViewController = storyboard.instantiateViewControllerWithIdentifier("VC") as UIViewController navigationController.viewControllers = [rootViewController] self.window?.rootViewController = navigationController return true } 

मेरी स्टोरीबोर्ड स्क्रीन देखें

यदि आप स्टोरीबोर्ड का उपयोग नहीं कर रहे हैं, तो आप इस कोशिश कर सकते हैं

 var window: UIWindow? var initialViewController :UIViewController? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { initialViewController = MainViewController(nibName:"MainViewController",bundle:nil) let frame = UIScreen.mainScreen().bounds window = UIWindow(frame: frame) window!.rootViewController = initialViewController window!.makeKeyAndVisible() return true } 

यहां तक ​​पहुंचने का यह एक अच्छा तरीका है यह उदाहरण एक नेविगेशन नियंत्रक को रूट व्यू नियंत्रक के रूप में रखता है, और नेविगेशन स्टैक के निचले भाग में अपनी पसंद के दृश्य नियंत्रक को रखता है, इसके लिए आपको जो कुछ भी ज़रूरत है उसे पुश करने के लिए तैयार करता है।

 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { // mainStoryboard let mainStoryboard = UIStoryboard(name: "MainStoryboard", bundle: nil) // rootViewController let rootViewController = mainStoryboard.instantiateViewControllerWithIdentifier("MainViewController") as? UIViewController // navigationController let navigationController = UINavigationController(rootViewController: rootViewController!) navigationController.navigationBarHidden = true // or not, your choice. // self.window self.window = UIWindow(frame: UIScreen.mainScreen().bounds) self.window!.rootViewController = navigationController self.window!.makeKeyAndVisible() } 

इस उदाहरण का काम करने के लिए आप अपने मेन व्यू नियंत्रक पर स्टोरीबोर्ड आईडी के रूप में "मेन वीक्यू कंट्रोलर" सेट करेंगे, और इस मामले में स्टोरीबोर्ड का फ़ाइल नाम "मेनस्टोरीबोर्ड। स्टोरीबोर्ड" होगा। मैं अपने स्टोरीबोर्ड का नाम बदलता हूं क्योंकि मेन.स्टोरीबोर्ड मेरे लिए उचित नाम नहीं है, खासकर अगर आप कभी भी उप-क्लास में जाते हैं

मैं इसे उद्देश्य-सी पर किया था उम्मीद है कि यह यू के लिए उपयोगी होगा

 UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil]; UIViewController *viewController; NSUserDefaults *loginUserDefaults = [NSUserDefaults standardUserDefaults]; NSString *check=[loginUserDefaults objectForKey:@"Checklog"]; if ([check isEqualToString:@"login"]) { viewController = [storyboard instantiateViewControllerWithIdentifier:@"SWRevealViewController"]; } else { viewController = [storyboard instantiateViewControllerWithIdentifier:@"LoginViewController"]; } self.window.rootViewController = viewController; [self.window makeKeyAndVisible]; 

Xcode 8 के लिए, स्विफ्ट 3:

स्टोरीबोर्ड से रूट दृश्य नियंत्रक इंस्टेंटिएट करें:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // this line is important self.window = UIWindow(frame: UIScreen.main.bounds) // In project directory storyboard looks like Main.storyboard, // you should use only part before ".storyboard" as it's name, // so in this example name is "Main". let storyboard = UIStoryboard.init(name: "Main", bundle: nil) // controller identifier sets up in storyboard utilities // panel (on the right), it called Storyboard ID let viewController = storyboard.instantiateViewController(withIdentifier: "YourViewControllerIdentifier") as! YourViewController self.window?.rootViewController = viewController self.window?.makeKeyAndVisible() return true } 

यदि आप रूट के रूप में UINavigationController का उपयोग करना चाहते हैं:

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // this line is important self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard = UIStoryboard.init(name: "Main", bundle: nil) let viewController = storyboard.instantiateViewController(withIdentifier: "YourViewControllerIdentifier") as! YourViewController let navigationController = UINavigationController.init(rootViewController: viewController) self.window?.rootViewController = navigationController self.window?.makeKeyAndVisible() return true } 

Xib से रूट दृश्य नियंत्रक इंस्टेंट करें:

यह लगभग समान है, लेकिन लाइनों के बजाय

 let storyboard = UIStoryboard.init(name: "Main", bundle: nil) let viewController = storyboard.instantiateViewController(withIdentifier: "YourViewControllerIdentifier") as! YourViewController 

आपको लिखना होगा

 let viewController = YourViewController(nibName: "YourViewController", bundle: nil) 

मैंने एक्सकोड 8 और स्विफ्ट 3.0 में किया था। आशा है कि यह आपके लिए उपयोगी होगा, और इसकी पूरी तरह से काम करना निम्नलिखित कोड का उपयोग करें:

 var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard = UIStoryboard(name: "Main", bundle: nil) let initialViewController = storyboard.instantiateViewController(withIdentifier: "ViewController") self.window?.rootViewController = initialViewController self.window?.makeKeyAndVisible() return true } 

और अगर आप नेविगेशन नियंत्रक का उपयोग कर रहे हैं, तो इसके लिए निम्नलिखित कोड का उपयोग करें:

 var window: UIWindow? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { self.window = UIWindow(frame: UIScreen.main.bounds) let storyboard = UIStoryboard(name: "Main", bundle: nil) let navigationController:UINavigationController = storyboard.instantiateInitialViewController() as! UINavigationController let initialViewController = storyboard.instantiateViewControllerWithIdentifier("ViewController") navigationController.viewControllers = [initialViewController] self.window?.rootViewController = navigationController self.window?.makeKeyAndVisible() return true } 

अच्छी तरह से ऊपर / नीचे के सभी उत्तर स्टोरीबोर्ड में कोई प्रविष्टि बिंदु के बारे में चेतावनी नहीं पैदा कर रहे हैं।

यदि आप 2 (या अधिक) प्रविष्टि दृश्य नियंत्रक चाहते हैं जो कुछ शर्त पर निर्भर करते हैं ( शर्त कहें तो) तो आपको क्या करना चाहिए:

  • अपने Main.storyboard में रूट विवरकंट्रोलर के बिना UINavigationController बनाएँ, इसे प्रवेश बिंदु के रूप में सेट करें
  • दृश्य नियंत्रकों में 2 (या अधिक) "दिखाएँ" सेग्यूज़ बनाएँ , उन्हें कुछ आईडी असाइन करें, id1 और id2 कहते हैं
  • अगले कोड का उपयोग करें:

     class AppDelegate: UIResponder, UIApplicationDelegate { var window: UIWindow? func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { let navigationController = window!.rootViewController! as! UINavigationController navigationController.performSegueWithIdentifier(conditionVariable ? "id1" : "id2") return true } 

उम्मीद है की यह मदद करेगा।

बस आप इसे देखने नियंत्रक में करना चाहते हैं और ऐप प्रतिनिधि में नहीं: बस अपने दृश्य नियंत्रक में AppDelegate के संदर्भ को प्राप्त करें और इसे सही दृश्य नियंत्रक के साथ विंडो ऑब्जेक्ट रीसेट करें क्योंकि यह रूटव्यूवियंट नियंत्रक है।

 let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate appDelegate.window = UIWindow(frame: UIScreen.mainScreen().bounds) let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil) let yourVC = mainStoryboard.instantiateViewControllerWithIdentifier("YOUR_VC_IDENTIFIER") as! YourViewController appDelegate.window?.rootViewController = yourVC appDelegate.window?.makeKeyAndVisible() 
 I worked out a solution on Xcode 6.4 in swift. // I saved the credentials on a click event to phone memory @IBAction func gotobidderpage(sender: AnyObject) { if (usernamestring == "bidder" && passwordstring == "day303") { rolltype = "1" NSUserDefaults.standardUserDefaults().setObject(usernamestring, forKey: "username") NSUserDefaults.standardUserDefaults().setObject(passwordstring, forKey: "password") NSUserDefaults.standardUserDefaults().setObject(rolltype, forKey: "roll") self.performSegueWithIdentifier("seguetobidderpage", sender: self) } // Retained saved credentials in app delegate.swift and performed navigation after condition check func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { let usernamestring = NSUserDefaults.standardUserDefaults().stringForKey("username") let passwordstring = NSUserDefaults.standardUserDefaults().stringForKey("password") let rolltypestring = NSUserDefaults.standardUserDefaults().stringForKey("roll") if (usernamestring == "bidder" && passwordstring == "day303" && rolltypestring == "1") { // Access the storyboard and fetch an instance of the view controller var storyboard = UIStoryboard(name: "Main", bundle: nil) var viewController: BidderPage = storyboard.instantiateViewControllerWithIdentifier("bidderpageID") as! BidderPage // Then push that view controller onto the navigation stack var rootViewController = self.window!.rootViewController as! UINavigationController rootViewController.pushViewController(viewController, animated: true) } // Override point for customization after application launch. return true } Hope it helps !