gpt4 book ai didi

Storyboard 中的 iOS Swift 启动画面

转载 作者:行者123 更新时间:2023-11-28 11:17:00 25 4
gpt4 key购买 nike

在我的 iPhone 应用程序中,需要在加载第一页之前显示启动画面(显示公司 Logo 和一些信息)2-3 秒。

此外,应用还需要决定哪个页面应作为此处的第一页加载(根据用户的“初始设置完成”级别)。

我正在使用“Swift”作为编程语言并使用“Universal StoryBoard”来设计界面...

我已选择 Main.storyboard 作为启动屏幕文件。在 ViewController 类中实现了以下逻辑

override func viewDidAppear(animated: Bool) {
NSLog("Before sleep...")
sleep(2)
NSLog("After sleep...")

self.controllNavigation()
}

func controllNavigation() -> Void {

let storyBoard : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)

var nextViewController

if (Condition1)
{
nextViewController = storyBoard.instantiateViewControllerWithIdentifier("MainMenu") as! MainMenuViewController
}
else
{
nextViewController = storyBoard.instantiateViewControllerWithIdentifier("UserSetup") as! UserSetupViewController
}

self.presentViewController(nextViewController, animated: true, completion: nil)

}

一切正常,但在等待 sleep(2) 时,刷新页面会发生某种事情。我不确定这是否是最好的方法。喜欢听想法。谢谢

最佳答案

在 app delegate 中使用延迟而不是 viewController 的 viewDidAppear。用作:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
NSLog("Before Sleep");
sleep(2);
NSLog("After sleep");
return true
}

这样做会让你的启动画面停留到 2 秒,然后你可以在你的 View Controller 中使用以下内容:

override func viewDidAppear(animated: Bool) {
self.controllNavigation()
}

希望这有帮助:)

关于Storyboard 中的 iOS Swift 启动画面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31114418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com