2016-07-18 9 views
0

Ich bin neu in swift Programmierung und versuchen, durch die Grundlagen zu arbeiten, bevor Sie auf kompliziertere Programmierung. Versuchen, die Grundlagen zu verfestigen.Ändern einer UILabel In Swift nach Lastwechsel

Ich versuche einfach, ein "Hallo" -Programm in swift zu erstellen. Die Grundlagen sind, dass ein Label geladen wird, das als "Hi!" Beginnt. Es gibt eine textField und eine Schaltfläche, die "Hallo" sagt. Die Idee ist, dass der Benutzer seinen oder ihren Namen in das Textfeld eingibt und den "Hallo" Knopf drückt. Die Beschriftung ändert sich, um "Hello Entered Name" zu sagen. Gerade jetzt hat der Code einfach eine hart codierte Zeichenkette, um den Beweis des Konzepts mit der Hinzufügung des tatsächlichen Gebens des Namens zu tun, um zu kommen. Der Code so weit ist:

import UIKit 

class ViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

@IBOutlet var Text_Name: UITextField! 
@IBOutlet var Label_Hi: UILabel! 


@IBAction func btn_Hello() { 

    var field_string: String; 

    if Text_Name.text == "" 
    { 
     print("In it"); 
     field_string = ""; 
     self.Label_Hi.text = field_string; 

    } 
    else 
    { 
     print("In It 2"); 
     field_string = "Test"; //String(Text_Name.text); 
     self.Label_Hi.text = field_string; //+ field_string; 
    } 
} 



} 

Gerade jetzt, wenn das Textfeld (Name) links null ist, passiert nichts (auch bekannt als die Hallo bleibt unverändert!). Wenn ein Name eingegeben wird, erscheinen drei Punkte unter dem Hi! Etikett auf dem Bildschirm. Außerdem wird der Druck nirgends angezeigt. Jede Hilfe wird geschätzt.

Danke

Antwort

0

Aus Ihrer Erklärung, so scheint es, dass Sie wahrscheinlich nicht Ihre @IBAction func btn_Hello() verbinden. Stellen Sie beim Verbinden der Taste mit dem ViewController sicher, dass Connection in Aktion geändert wird und EventTouch Up Inside ist.

enter image description here

+0

Vielen Dank für eine schnelle Antwort. Leider war dies bereits abgeschlossen. Ich habe seit dem ursprünglichen Post mit diesem Problem gearbeitet und gelernt, die Konsole und die variable Uhr zu verwenden. Die Konsole druckt den passenden print() Text zur passenden Zeit aus. Wenn ich die Variable Label_Hi beobachte, bekomme ich optional ("Text"), wo der Text ist, was er für diesen Teil des Programms sein soll. Wiederum, wenn ich einen Namen eintippe, erhalte ich drei Punkte, die "unter/hinter" dem Label "Hi!" und wenn ich nichts in das Textfeld lege das Label "Hi!" einfach bleibt unverändert. – Swan

Verwandte Themen