【发布时间】:2015-11-25 18:25:46
【问题描述】:
所以最近我一直在制作一个具有文本字段和标签的练习应用程序。当您在文本字段中输入内容并点击保存时,它应该将标签更改为该文本并保存。它保存的原因是当您打开应用程序时,标签的文本等于您保存的最后一个内容。如果您在文本框中的新字符串上点击保存,文本将再次保存。
我遇到的问题是,在您保存新内容并且字符串未保存之前,标签不会与文本一起出现,因此即使您保存了某些内容,它们也不会出现。
这是我在 ViewController.swift 中的代码:
//
// ViewController.swift
// Help
//
// Created by Lucas on 9/30/15.
// Copyright (c) 2015 Lucas. All rights reserved.
//
import UIKit
class ViewController: UIViewController {
@IBOutlet var Savedlbl: UILabel!
@IBOutlet var Textfield: UITextField!
@IBOutlet var Label: UILabel!
var current = ""
var Saved = ""
override func viewDidLoad() {
super.viewDidLoad()
let currentDefault = NSUserDefaults.standardUserDefaults()
Savedlbl.text = Saved
if(currentDefault.valueForKey("Saved") != nil)
{
self.Saved = currentDefault.valueForKey("Saved") as! NSString! as String
}
// Do any additional setup after loading the view, typically from a nib.
}
@IBAction func Set(sender: AnyObject) {
setall()
}
func setall()
{
current = Textfield.text!
Label.text = Textfield.text!
let currentDefault = NSUserDefaults.standardUserDefaults()
Saved = (currentDefault.valueForKey("saved") as? String)!
currentDefault.setValue(Saved, forKey: "saved")
Savedlbl.text = Textfield.text
currentDefault.synchronize()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
这是我认为问题在于视图确实加载的地方。当应用程序加载时,它不会将其设置为最后保存的内容。
import UIKit
class ViewController: UIViewController {
@IBOutlet var Savedlbl: UILabel!
@IBOutlet var Textfield: UITextField!
@IBOutlet var Label: UILabel!
var current = ""
var Saved = ""
override func viewDidLoad() {
super.viewDidLoad()
let currentDefault = NSUserDefaults.standardUserDefaults()
Savedlbl.text = Saved
if(currentDefault.valueForKey("Saved") != nil)
{
self.Saved = currentDefault.valueForKey("Saved") as! NSString! as String
}
// Do any additional setup after loading the view, typically from a nib.
}
谢谢,如果您需要更多信息,请告诉我,我会尽快提供!
【问题讨论】:
-
在视图中加载了你还没有获取标签的默认值。它也总是显示为空
-
卢卡斯,您每周要在 SO 上创建多少个新帐户? ;-)
-
我没有开户
-
卢卡斯·马扎?杰夫?所有关于具有相同描述标题的几乎相同代码的问题......
-
大声笑,我的其他帐户有问题。
标签: ios swift nsuserdefaults