[英]Save and Load text on UITextField
我在一個問題上掙扎了幾個小時。 基本上,我有一個簡單的Swift應用程序。 就像這樣 在我的第一個視圖控制器中,我有3個文本字段,我想用信息和“下一步”按鈕填充它們。
按下“下一步”按鈕將把我發送到一個新的UIViewController,其中將有一個“返回”按鈕。 按下返回按鈕后,我將被帶回到3個文本字段的第一頁。
我想要的是:如果我用信息完成文本字段,請按Next,然后按Back,我希望在文本字段中填充該信息。
我設法通過按鈕在視圖之間移動,但是我無法保存信息。 你能幫我一點忙嗎?
@IBOutlet weak var txtb1: UITextField!
@IBOutlet weak var txtb2: UITextField!
@IBOutlet weak var txtb3: UITextField!
@IBAction func next(sender: AnyObject) {
text1 = self.txtb1.text!
text2 = self.txtb2.text!
text3 = self.txtb3.text! }
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
if (!text1)
{
txtb1.text = text1
}
}
如果要將變量傳遞給不同的視圖,則必須先使用prepareForSegue函數,然后才能將其綁定到該視圖控制器中。
這允許變量由視圖控制器訪問。
Override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!)
{
if segue.identifier == "segue_name"
{
let theDestination = segue.destinationViewController as! newViewController
theDestination.variable = "testing"
theDestination.variable2 = "testing2"
}
}
然后,在第二個視圖控制器內部,必須聲明variable和variable2,如下所示:
var variable:String!
var variable2:String!
然后,這些將可以在viewDidLoad方法內的第二個視圖控制器中使用。
好。 我設法解決了一些問題,該按鈕未相應鏈接,因此該功能未執行。 這是代碼:
var text1 = ""
@IBOutlet weak var txtb1: UITextField!
@IBAction func next(sender: AnyObject) {
text1 = self.txtb1.text! // text1 = "I am taking value"
}
// when i press the back button
override func viewDidLoad() {
super.viewDidLoad()
if (!numarInmatriculare.isEmpty)
{
txtb1.text = text1 //here text1 = Null. the value is not saved
}
}
我希望將值保存並重新顯示在文本字段中。
我也試過使用靜態的varivaries,但我犯了錯誤。
static var numar:String = ""
numar = text1
//static member 'numar'cannot be used on instance of type 'viewcontroller'
在這種情況下,您無需做任何事情,一旦輸入了文本字段,然后單擊“下一步”按鈕,便在下面顯示了一些代碼
text1 = self.txtb1.text!
text2 = self.txtb2.text!
text3 = self.txtb3.text!
請首先刪除代碼,一旦文本字段中的數據被填充,其數據將自動保留,單擊下一步按鈕后將自動返回,它將保留,當當前視圖彈出時,僅數據將被取消分配。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.