texto modificar con asignar ios swift uilabel iboutlet

ios - modificar - Cambio de texto de Swift UILabel



set value label (4)

La salida que creaste debe haber sido nombrada por ti. La salida pertenece a su controlador de vista. self.simpleLabel significa ''buscar el valor de mi propiedad llamada'' simpleLabel ''.

Dado que los distintos puntos de venta tienen nombres diferentes, el uso de self.simpleLabel aquí no funcionará hasta que su punto de venta se llame ''simpleLabel''. Intente reemplazar ''simpleLabel'' con el nombre que le dio a la tienda cuando lo creó.

La forma correcta ahora sería:

self.yourLabelName.text = "message"

Estoy intentando aprender Swift de Apple. Hace poco intenté crear una aplicación GUI, pero tengo una pregunta:

¿Cómo interactúo con los elementos GUI de mi aplicación? Por ejemplo, utilicé el constructor de interfaces para hacer un UILabel, y lo conecté a mi controlador de visualización haciendo clic con el botón de control, para obtener el elemento @IBOUTLET. Ahora, ¿cómo puedo, mientras estoy en mi controlador de vista, editar el texto de esta UILabel? Para decirlo de otra manera, ¿qué código puedo usar para controlar mediante programación el texto de algo en mi guión gráfico? Todos los métodos que he encontrado en línea solo parecen funcionar con un botón generado en código, no con un botón generado en un guión gráfico.

He visto codigo como

self.simpleLabel.text = "message"

Si esto es correcto, ¿cómo lo vinculo con la etiqueta en cuestión? En otras palabras, ¿cómo adapto este código para conectarme con el IBOutlet (si es lo que hago)?


Puede intentar cambiar un componente de UI que no se encuentra en el hilo principal, en ese caso, haga esto:

DispatchQueue.main.async { someLabel.text = "Whatever text" }


Si ha vinculado exitosamente el control con un IBOutlet en su clase UIViewController , entonces la propiedad se le agrega y simplemente reemplazaría simpleLabel con lo que haya nombrado como su conexión de IBOutlet para ser así:

class MyViewController: UIViewController { @IBOutlet weak var myLabel: UILabel! func someFunction() { self.myLabel.text = "text" } }


Si tienes algo como esto para un IBOutlet:

@IBOutlet var someLabel: UILabel!

entonces podría establecer la propiedad de texto como en su ejemplo:

someLabel.text = "Whatever text"

Si tiene problemas con esto, quizás no esté asignando la propiedad de texto en el lugar correcto. Si está en una función a la que no se llama, esa línea no se ejecutará y la propiedad de texto no cambiará. Intente anular la función viewDidLoad y coloque la línea allí, así:

override func viewDidLoad() { super.viewDidLoad() someLabel.text = "Whatever text" }

Luego, tan pronto como se cargue la vista, establecerá la propiedad de texto. Si no está seguro de si una línea de código se está ejecutando o no, siempre puede colocar un punto de interrupción allí o agregar algún resultado. Algo como

println("Checkpoint")

dentro de un bloque de código del que no está seguro podría realmente ayudarlo a ver cuándo y si se ejecuta.

Espero que esto ayude.