如何在第一次打开应用程序时显示图像?

时间:2015-08-12 16:17:37

标签: ios swift

我正在编写一个非常简单的应用程序,我想在第一次打开应用程序时显示一条消息。之后根本不显示。

信息将出现在图像上。

有没有办法做到这一点?我正在使用快速代码,非常感谢一些帮助。

4 个答案:

答案 0 :(得分:4)

使用NSUserDefaults存储您可以检查的值,以查看您的应用程序之前是否已启动过一次。如果您想在应用程序启动时显示图像,请将其放在viewDidLoad中。

    let defaults = NSUserDefaults.standardUserDefaults()
    if !defaults.boolForKey("haveRanOnce") {
        // First run of app
        // Present your message

        // Update defaults
        defaults.setBool(true, forKey: "haveRanOnce")
    }

NSUserDefaults Class Reference

答案 1 :(得分:2)

NSUserDefaults中存储一个标记,显示图像是否已显示。如果没有,请显示图像。在显示视图时,将此逻辑添加到根视图控制器中可能最简单,然后将图像添加为子视图或显示视图控制器以显示图像。或者,根据您的应用程序的作用,您可以使用启动屏幕显示加载进度(等),然后在进入“真正的”根视图控制器之前检查并显示图像(如果需要)。

答案 2 :(得分:2)

您可以保存NSUserDefault命名NotFirstTime来执行此操作。当应用程序首次启动时,不会有任何FirstTimeLaunch用户默认值,因此,它将返回false作为默认值。在这种情况下,您可以显示图片并将NotFirstTime设置为true

在第二次发布时NotFirstTime将返回true,在这种情况下,您不应该显示图片。

以下是执行此操作的代码:

let defaults = NSUserDefaults.standardUserDefaults()

if let name = defaults.boolForKey("NotFirstTime")
{
    /* don't display image here */
}
else
{
    /* display image here */
    defaults.setBool(true, forKey: "NotFirstTime");
}

答案 3 :(得分:1)

使用NSUserDefaults在变量中存储值1。我变量的值为0,那么它是第一次加载应用程序。如果它的值为1,则之前已加载。

let defaults = NSUserDefaults.standardUserDefaults()
var isFirstTime = defaults.integerForKey("firstTime");

if isFirstTime == 0 {
    //Show image / message
    defaults.setInteger(value: 1, forKey "firstTime") //Set value to 1
}
相关问题