আমার কাছে ওয়ার্কিং লগইন এবং প্রধান ভিউ কন্ট্রোলার সহ একটি স্টোরিবোর্ড সেটআপ করা আছে, দ্বিতীয়টি হল সেই ভিউ কন্ট্রোলার যেখানে লগইন সফল হওয়ার সময় ব্যবহারকারী নেভিগেট করে। আমার উদ্দেশ্য হ'ল প্রমাণীকরণ (কীচেইনে সঞ্চিত) সফল হলে অবিলম্বে প্রধান ভিউ কন্ট্রোলার দেখানো এবং প্রমাণীকরণ ব্যর্থ হলে লগইন দর্শন নিয়ামক দেখান। মূলত, আমি আমার অ্যাপ্লিকেশনটিতে এটি করতে চাই:
// url request & response work fine, assume success is a BOOL here
// that indicates whether login was successful or not
if (success) {
// 'push' main view controller
} else {
// 'push' login view controller
}
আমি শিথ্যউইথআইডেন্টিফায়ার পদ্ধতিটি সম্পর্কে জানি: তবে এই পদ্ধতিটি ইউআইভিউকন্ট্রোলারের একটি উদাহরণ পদ্ধতি, তাই অ্যাপডেলিগেটের মধ্যে থেকে কলযোগ্য নয়। আমি আমার বিদ্যমান স্টোরিবোর্ডটি ব্যবহার করে এটি কীভাবে করব?
সম্পাদনা করুন:
স্টোরিবোর্ডের প্রাথমিক ভিউ কন্ট্রোলার এখন একটি নেভিগেশন নিয়ামক যা কোনও কিছুর সাথে সংযুক্ত নয়। আমি সেটরুটভিউ কনট্রোলার ব্যবহার করেছি: পার্থক্য কারণ মেইনইডেন্টিফায়ার একটি ইউআইটিএববারকন্ট্রোলার। তারপরে আমার লাইনের মতো দেখতে এটি:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
BOOL isLoggedIn = ...; // got from server response
NSString *segueId = isLoggedIn ? @"MainIdentifier" : @"LoginIdentifier";
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:nil];
UIViewController *initViewController = [storyboard instantiateViewControllerWithIdentifier:segueId];
if (isLoggedIn) {
[self.window setRootViewController:initViewController];
} else {
[(UINavigationController *)self.window.rootViewController pushViewController:initViewController animated:NO];
}
return YES;
}
পরামর্শ / উন্নতি স্বাগত!