UIKit és el framework principal per a la creació d'interfícies d'usuari en aplicacions iOS. Proporciona una àmplia gamma de components d'interfície d'usuari, com ara botons, etiquetes, taules i molt més. En aquest tema, aprendrem els conceptes bàsics de UIKit i com utilitzar-lo per crear una aplicació senzilla.
- Introducció a UIKit
Què és UIKit?
UIKit és un framework que proporciona les eines necessàries per construir i gestionar la interfície d'usuari d'una aplicació iOS. Inclou classes per a la gestió de vistes, controladors de vista, gestió d'esdeveniments i molt més.
Components Principals de UIKit
- UIView: La classe base per a totes les vistes.
- UIViewController: La classe base per a tots els controladors de vista.
- UIWindow: Una instància de UIWindow representa una finestra en la qual es mostren les vistes.
- UIControl: Una subclasse de UIView que gestiona esdeveniments d'usuari, com ara tocs.
- Creació d'una Aplicació Senzilla amb UIKit
Configuració del Projecte
- Obre Xcode i crea un nou projecte seleccionant "App" sota la secció "iOS".
- Assigna un nom al projecte i assegura't que el llenguatge seleccionat sigui Swift.
- Selecciona "Storyboard" com a interfície d'usuari.
Estructura del Projecte
- Main.storyboard: El fitxer principal on dissenyaràs la interfície d'usuari.
- ViewController.swift: El fitxer de codi associat al controlador de vista principal.
Afegir una Etiqueta i un Botó
- Obre
Main.storyboard
. - Arrossega una
UILabel
des de la biblioteca d'objectes fins a la vista principal. - Arrossega un
UIButton
des de la biblioteca d'objectes fins a la vista principal. - Configura les propietats de la
UILabel
i elUIButton
utilitzant l'inspector d'atributs.
Connectar la Interfície d'Usuari amb el Codi
- Obre
ViewController.swift
. - Crea outlets per a la
UILabel
i elUIButton
:import UIKit class ViewController: UIViewController { @IBOutlet weak var myLabel: UILabel! @IBOutlet weak var myButton: UIButton! override func viewDidLoad() { super.viewDidLoad() // Configuració inicial } @IBAction func buttonTapped(_ sender: UIButton) { myLabel.text = "Hola, món!" } }
- Torna a
Main.storyboard
i connecta els outlets i l'acció:- Ctrl+arrossega des de la
UILabel
fins a la declaració@IBOutlet weak var myLabel
. - Ctrl+arrossega des del
UIButton
fins a la declaració@IBOutlet weak var myButton
. - Ctrl+arrossega des del
UIButton
fins a la funció@IBAction func buttonTapped
.
- Ctrl+arrossega des de la
Executar l'Aplicació
- Selecciona un simulador o un dispositiu real des de la barra d'eines de Xcode.
- Fes clic al botó de reproducció per compilar i executar l'aplicació.
- Quan toquis el botó, l'etiqueta hauria de canviar el seu text a "Hola, món!".
- Exercicis Pràctics
Exercici 1: Afegir un Camp de Text
- Afegeix un
UITextField
a la vista. - Crea un outlet per al
UITextField
. - Modifica l'acció del botó per actualitzar l'etiqueta amb el text introduït en el camp de text.
Solució:
import UIKit class ViewController: UIViewController { @IBOutlet weak var myLabel: UILabel! @IBOutlet weak var myButton: UIButton! @IBOutlet weak var myTextField: UITextField! override func viewDidLoad() { super.viewDidLoad() } @IBAction func buttonTapped(_ sender: UIButton) { if let text = myTextField.text { myLabel.text = text } } }
Exercici 2: Canviar el Color de Fons
- Afegeix un segon botó que canviï el color de fons de la vista principal quan es toqui.
Solució:
import UIKit class ViewController: UIViewController { @IBOutlet weak var myLabel: UILabel! @IBOutlet weak var myButton: UIButton! @IBOutlet weak var myTextField: UITextField! @IBOutlet weak var changeColorButton: UIButton! override func viewDidLoad() { super.viewDidLoad() } @IBAction func buttonTapped(_ sender: UIButton) { if let text = myTextField.text { myLabel.text = text } } @IBAction func changeColorTapped(_ sender: UIButton) { self.view.backgroundColor = UIColor.red } }
- Resum
En aquesta secció, hem après els conceptes bàsics de UIKit i hem creat una aplicació senzilla que inclou una etiqueta, un botó i un camp de text. Hem après a connectar la interfície d'usuari amb el codi mitjançant outlets i accions, i hem practicat amb exercicis per reforçar els conceptes apresos. En el següent tema, explorarem com utilitzar Storyboards i Interface Builder per dissenyar interfícies d'usuari més complexes.
Curs de Programació en Swift
Mòdul 1: Introducció a Swift
- Introducció a Swift
- Configuració de l'Entorn de Desenvolupament
- El Teu Primer Programa en Swift
- Sintaxi i Estructura Bàsica
- Variables i Constants
- Tipus de Dades
Mòdul 2: Flux de Control
Mòdul 3: Funcions i Closures
- Definició i Crida de Funcions
- Paràmetres de Funció i Valors de Retorn
- Closures
- Funcions d'Ordre Superior
Mòdul 4: Programació Orientada a Objectes
Mòdul 5: Swift Avançat
Mòdul 6: Swift i Desenvolupament iOS
- Introducció al Desenvolupament iOS
- Conceptes Bàsics de UIKit
- Storyboards i Interface Builder
- Xarxes en Swift
- Core Data
- Conceptes Bàsics de SwiftUI