我正在编写一个非常简单的应用程序,我想在第一次打开应用程序时显示一条消息。之后根本不显示。
信息将出现在图像上。
有没有办法做到这一点?我正在使用快速代码,非常感谢一些帮助。
答案 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")
}
答案 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
}