Word een iOS-ontwikkelaar: hoe begin je met ontwikkelen voor iPad en iPhone

Schrijver: Monica Porter
Datum Van Creatie: 21 Maart 2021
Updatedatum: 1 Juli- 2024
Anonim
Run ANY OS on iPad or iPhone!
Video: Run ANY OS on iPad or iPhone!

Inhoud


Android is misschien wel een van de populairste besturingssystemen ter wereld, maar het is verre van het enige mobiele besturingssysteem!

Als u wilt dat uw mobiele applicatie een zo breed mogelijk publiek bereikt, moet u zich op meerdere platforms richten. Terwijl jij kon kies voor een platformonafhankelijke ontwikkelingstool zoals Flutter, u kunt ook meerdere codebases maken, waarmee u een gebruikerservaring kunt bieden die is ontworpen en afgestemd op elk mobiel platform.

Misschien wilt u uw nieuwste mobiele app op Android vrijgeven en iOS, misschien overweeg je om naar Apple te springen, of misschien ben je gewoon nieuwsgierig om te zien hoe ontwikkelen voor iOS zich verhoudt tot ontwikkelen voor Android. Wat je motivatie ook is, in dit artikel laat ik je zien hoe je kunt beginnen met ontwikkelen voor iOS, door een eenvoudige app voor iPad en iPhone te maken.

Onderweg geef ik een inleiding tot de kernconcepten van de Swift-programmeertaal van Apple, zal ik je door de belangrijkste gebieden van de geïntegreerde ontwikkelomgeving Xcode leiden en je laten zien hoe je je projecten in de iOS Simulator kunt testen - voor het geval je heb nog niet toegezegd om een ​​iPad of iPhone te kopen!


Dit is wat je moet weten om te beginnen met het ontwikkelen voor iOS.

Moet ik Swift kennen?

Wanneer je begint te ontwikkelen voor iOS, heb je meestal een keuze uit twee programmeertalen: Objective-C of Swift. Swift is geïntroduceerd in 2014 en is de modernere taal, en Apple lijkt Swift over Objective-C te duwen voor iOS-ontwikkeling, dus ik gebruik Swift in deze tutorial.

Als je een ervaren Swift-professional bent, heb je een voorsprong. Maar zelfs als je dat nog nooit hebt gedaan gezien een enkele regel van Swift eerder, kun je nog steeds volgen en tegen het einde van dit artikel heb je een functionerende iOS-applicatie gemaakt, volledig geschreven in Swift.

Terwijl we onze iOS-app bouwen, leg ik de kernconcepten van deze programmeertaal uit, zodat je een basisoverzicht van Swift krijgt en begrijpt precies wat er gebeurt in elke regel code, zelfs als Swift helemaal nieuw voor je is.

Helaas heb je geen geheel nieuwe programmeertaal onder de knie wanneer je onderaan deze pagina komt, maar als je besluit om de ontwikkeling van iOS voort te zetten, raad ik aan om de Swift Playgrounds-app te bekijken. Deze applicatie bevat Learn To Code-oefeningen, gepresenteerd als interactieve puzzels die je helpen vertrouwd te raken met de Swift essentials die je nodig hebt om door te gaan met het verkennen van iOS-ontwikkeling.


Stel Xcode IDE van Apple in

Om te ontwikkelen voor iPhone en iPad, heb je een Mac nodig met macOS 10.11.5 of hoger. Als u niet zeker weet welke versie van macOS u momenteel gebruikt, dan:

  • Selecteer het 'Apple'-logo in de menubalk van uw Mac.
  • Selecteer 'Over deze Mac'.
  • Zorg ervoor dat het tabblad "Overzicht" is geselecteerd; uw versie van macOS zou in dit venster moeten verschijnen.

U hebt ook Xcode nodig, de geïntegreerde ontwikkelomgeving (IDE) van Apple. Xcode heeft alle tools en functies die nodig zijn voor het ontwerpen, ontwikkelen en debuggen van applicaties voor macOS, watchOS, tvOS - en iOS.

Om de nieuwste versie van Xcode te downloaden:

  • Start de App Store op uw Mac.
  • Voer 'Xcode' in het veld 'Zoeken' in.
  • Wanneer de Xcode-toepassing verschijnt, selecteert u "Get" gevolgd door "App installeren".
  • Voer uw Apple ID en wachtwoord in wanneer u hierom wordt gevraagd. Als u geen Apple ID hebt, kunt u er gratis een maken. Xcode wordt nu gedownload naar de map 'Programma's' op uw Mac.
  • Zodra Xcode klaar is met downloaden, start u het. Lees de algemene voorwaarden en klik op 'Akkoord' als u verder wilt gaan.
  • Als Xcode u vraagt ​​om wat extra software te downloaden, volg dan de instructies op het scherm om deze ontbrekende componenten te downloaden.

Aan de slag: maak een nieuw Xcode-project

Net als Android Studio wordt Xcode geleverd met een aantal sjablonen voor veel voorkomende categorieën iOS-toepassingen, zoals op tabs gebaseerde navigatie en games. Deze sjablonen bevatten boilerplate-code en bestanden die u kunnen helpen om uw iOS-projecten snel op te starten. In dit artikel maken we gebruik van een van deze kant-en-klare sjablonen.

Om een ​​nieuw Xcode-project te maken:

  • Start de Xcode IDE als je dat nog niet hebt gedaan.
  • Na enkele ogenblikken verschijnt het scherm "Welkom bij Xcode"; selecteer "Maak een nieuw Xcode-project." Als het welkomstscherm niet verschijnt, selecteer dan "Bestand> Nieuw> Project" in de Xcode-menubalk.
  • Zorg ervoor dat in het venster "Kies een sjabloon voor uw nieuwe project" het tabblad "iOS" is geselecteerd.
  • Selecteer de sjabloon "Single View App" en klik vervolgens op "Next".
  • Voer bij "Productnaam" "HelloWorld" in. Xcode gebruikt dit om uw project en uw toepassing een naam te geven.
  • Voer desgewenst een optionele 'Naam organisatie' in.
  • Voer uw "Organisatie-ID" in. Als u geen ID heeft, kunt u "com.example" gebruiken. Merk op dat de "Bundel-ID" automatisch wordt gegenereerd op basis van uw productnaam en organisatie-ID, zodat u moet me hierover zorgen maken.
  • Open de vervolgkeuzelijst 'Talen' en selecteer 'Swift'.
  • Vink het selectievakje "Kerngegevens gebruiken" aan en zorg ervoor dat dit het geval is niet gekozen.
  • Schakel het aankruisvak 'Inclusief eenheidstests' in.
  • Vink het selectievakje "UI-tests opnemen" aan en zorg ervoor dat dit het geval is niet gekozen.
  • Klik volgende."
  • Selecteer in het volgende dialoogvenster de locatie waar u uw project wilt opslaan en klik vervolgens op "Maken".

Xcode laadt nu uw project in het werkruimtevenster.

Ontwikkelteam vereist?

Op dit moment kan Xcode de volgende foutmelding weergeven: "Ondertekening voor HelloWorld vereist een ontwikkelteam."

Voordat u uw project op een fysiek iOS-apparaat kunt uitvoeren, moet u een geldig team instellen en uw toepassing ondertekenen. Omdat we alleen met iOS experimenteren, hoeft u het ondertekeningsproces nu niet te voltooien, maar u moet uw applicatie ondertekenen voordat deze op een fysiek apparaat kan worden uitgevoerd of toegang heeft tot bepaalde services, zoals Game Center of In-App Aankopen.

Inzicht in de Xcode IDE van Apple

In de werkruimte van Xcode schrijft u alle broncode van uw app, ontwerpt en bouwt u uw gebruikersinterface (UI) en maakt u alle extra bestanden en bronnen die uiteindelijk samenkomen om uw voltooide iOS-applicatie te vormen.

Xcode zit boordevol functies, maar als nieuwkomer in de ontwikkeling van iOS zijn er een paar dingen die u moet weten:

  • (1) Navigatiegebied. Dit gebied biedt snelle en gemakkelijke toegang tot alle verschillende bestanden en bronnen waaruit uw project bestaat. U kunt de inhoud van een bestand bekijken door deze in het navigatiegebied te selecteren. Merk op dat u dat alleen maar hoeft te doen kiezen het betreffende bestand; dubbelklikken op een bestand start het in een nieuw, extern venster.
  • (2) Editorgebied. Afhankelijk van het bestand dat u in het navigatiegebied selecteert, toont Xcode verschillende interfaces in het bewerkingsgebied. Meestal gebruikt u het Editor-gebied om de broncode van uw toepassing te schrijven en de gebruikersinterface op te bouwen.
  • Bijkeuken. Dit gebied is verdeeld in twee secties. Boven in het gebied Hulpprogramma (3) wordt het deelvenster Inspector weergegeven, waar u informatie over het item dat u hebt geselecteerd in het gebied Navigatie of Editor kunt bekijken en de attributen kunt bewerken. Onder aan het gebied Hulpprogramma (4) wordt het deelvenster Bibliotheek weergegeven, dat toegang biedt tot enkele kant-en-klare UI-elementen, codefragmenten en andere bronnen.

AppleDelegate: onderzoek van het Swift-bronbestand

De sjabloon voor de Single View-app bevat alle Swift-code en -bronnen die nodig zijn om een ​​eenvoudige, maar werkende iOS-applicatie te maken.

U kunt al deze automatisch gegenereerde bestanden en bronnen zien in het navigatiegebied (aan de linkerkant van de Xcode-werkruimte).

Als het navigatiegebied niet zichtbaar is, kunt u het verbergen door te verbergen "Beeld> Navigators> Projectnavigator tonen" op de Xcode-menubalk.

De Simple View Application-sjabloon genereert automatisch verschillende bestanden, maar laten we beginnen met het onderzoeken van "AppleDelegate.swift." Selecteer dit bestand in het navigatiegebied. Het Editor-gebied moet worden bijgewerkt om de inhoud van het bestand weer te geven.

import UIKit @UIApplicationMain klasse AppDelegate: UIResponder, UIApplicationDelegate {var window: UIWindow? // In Swift declareert u een methode met het trefwoord "func" // func-toepassing (_ toepassing: UIApplication, didFinishLaunchingWithOptions launchOptions:?) -> Bool {return true} // Definieer een parameter "application" met het type "UIApplication" ”// func applicationWillResignActive (_ application: UIApplication) {} func applicationDidEnterBackground (_ application: UIApplication) {} func applicationWillEnterForeground (_ application: UIApplication) {} func applicationDidBecomeActive (_ application: UIApplication) {} func applicationWillTermation applicatie ) {}}

Laten we eens nader kijken naar wat er gebeurt in dit bestand:

1. Maak een beginpunt

Het attribuut @UIApplicationMain maakt een toegangspunt tot uw app en een runlus, een lus voor het verwerken van gebeurtenissen waarmee u werk kunt plannen en invoergebeurtenissen in uw toepassing kunt coördineren.

@UIApplicationMain

2. Definieer uw AppDelegate

Het bestand AppDelegate.swift definieert een AppleDelegate-klasse, die het venster maakt waarin de inhoud van uw app wordt getekend en een plaats biedt om te reageren op statusovergangen, bijvoorbeeld wanneer uw app naar de achtergrond of naar de voorgrond wordt verplaatst.

class AppDelegate: UIResponder, UIApplicationDelegate {

In de bovenstaande code gebruiken we ook het UIApplicationDelegate-protocol, dat verschillende methoden definieert die u kunt gebruiken om uw app in te stellen en verschillende gebeurtenissen op app-niveau af te handelen.

3. Definieer een venstereigenschap

De klasse AppDelegate bevat een eigenschap "venster", waarin een verwijzing naar het toepassingsvenster wordt opgeslagen. Deze eigenschap vertegenwoordigt de hoofdmap van de weergavehiërarchie van uw app en hier wordt alle inhoud van uw app getekend.

var-venster: UIWindow?

4. Diverse Stub-implementaties

De klasse AppDelegate bevat ook stubimplementaties voor verschillende methoden voor delegeren, zoals:

func applicationDidEnterBackground (_ application: UIApplication) {

Met deze methoden kan het app-object communiceren met de gemachtigde van de app. Telkens wanneer uw toepassing van status verandert, roept het app-object de bijbehorende gedelegeerde methode aan, bijvoorbeeld wanneer de app naar de achtergrond overgaat, wordt de bovenstaande methode applicationDidEnterBackground genoemd.

Elk van deze gemachtigde methoden heeft een standaardgedrag, maar u kunt aangepast gedrag definiëren door uw eigen code toe te voegen. U zou bijvoorbeeld doorgaans de implementatie van de toepassingDidEnterBackground stub uitbreiden door code toe te voegen om gedeelde bronnen vrij te geven. Met de methode applicationDidEnterBackground moet u ook voldoende statusinformatie opslaan om uw toepassing in de huidige status te herstellen, voor het geval uw app wordt beëindigd terwijl deze op de achtergrond staat.

Naast applicationDidEnterBackground bevat AppleDelegate.swift de volgende methoden:

  • didFinishLaunchingWithOptions. Laat de afgevaardigde weten dat het opstartproces bijna voltooid is en dat uw toepassing bijna klaar is om te worden uitgevoerd. U moet deze methode gebruiken om de initialisatie van uw app te voltooien en eventuele laatste aanpassingen te maken, voordat de gebruikersinterface van uw app aan de gebruiker wordt gepresenteerd.
  • applicationWillResignActive. Vertelt de gemachtigde dat uw toepassing op het punt staat van een actieve naar een inactieve status te gaan. Deze methode kan worden geactiveerd door een tijdelijke onderbreking, zoals een inkomend telefoongesprek, of wanneer uw toepassing begint over te schakelen naar een achtergrondstatus. Wanneer uw app zich in een inactieve status bevindt, zou deze minimaal werk moeten verrichten, dus moet u applicationWillResignActive gebruiken om lopende taken te pauzeren en timers uit te schakelen. U moet deze gelegenheid ook aangrijpen om niet-opgeslagen gegevens op te slaan, zodat deze niet verloren gaan als de gebruiker ervoor kiest om uw applicatie te verlaten terwijl deze op de achtergrond staat.
  • applicationWillEnterForeground. In iOS 4.0 en hoger wordt deze methode genoemd als onderdeel van de overgang van uw app van de achtergrond naar een actieve, voorgrondstatus. U moet deze methode gebruiken om wijzigingen ongedaan te maken die u hebt aangebracht toen uw toepassing op de achtergrond kwam.
  • applicationDidBecomeActive. Dit vertelt de gemachtigde dat uw app is verplaatst van een inactieve naar een actieve status. Dit gebeurt meestal wanneer de gebruiker of het systeem uw toepassing start, maar het kan ook gebeuren als de gebruiker ervoor kiest een onderbreking te negeren die uw app naar een tijdelijke inactieve status heeft verplaatst, zoals een inkomend telefoongesprek of sms. U moet de methode applicationDidBecomeActive gebruiken om taken te onderbreken die zijn onderbroken terwijl uw toepassing niet actief was.
  • applicationWillTerminate. Deze methode informeert de gemachtigde dat uw aanvraag op het punt staat te worden beëindigd. U moet deze methode gebruiken om eventueel op te ruimen, zoals het opslaan van gebruikersgegevens of het vrijmaken van gedeelde bronnen. Houd er rekening mee dat deze methode ongeveer vijf seconden heeft om zijn taken uit te voeren en terug te keren, en als het deze tijdslimiet overschrijdt, kan het systeem besluiten het proces volledig te beëindigen.

Uw project testen: de iOS-simulator uitvoeren

Omdat we de Single View App-sjabloon hebben gebruikt, bevat ons project al voldoende code om op iOS te worden uitgevoerd.

U kunt uw iOS-project op de proef stellen door de iOS-simulator te gebruiken die vooraf is verpakt met Xcode. Net als de emulator van Android Studio, kunt u met de iOS-simulator testen hoe uw app eruitziet en werkt op verschillende apparaten, waaronder apparaten met verschillende schermformaten en resoluties.

Laten we ons project uitvoeren in de iOS-simulator:

  • Selecteer "Stel het actieve schema in" (waar de cursor in de volgende schermafbeelding staat).
  • Kies het apparaat dat u wilt emuleren, zoals "iPhone 8", "iPad Air 2" of "iPhone X". De simulator emuleert standaard iPhone 8 Plus.
  • Selecteer in de linkerbovenhoek van de Xcode-werkbalk de knop "Uitvoeren" (waar de cursor zich in de volgende schermafbeelding bevindt).

  • Als dit de eerste keer is dat je een iOS-app test, vraagt ​​Xcode of je de ontwikkelaarsmodus wilt inschakelen. Met de ontwikkelaarsmodus heeft Xcode toegang tot bepaalde foutopsporingsfuncties zonder elke keer om uw wachtwoord te vragen, dus tenzij u een specifieke reden hebt om dit niet te doen, wilt u meestal de ontwikkelaarsmodus inschakelen.

Zodra Xcode klaar is met het bouwen van uw project, wordt de iOS-simulator gestart en wordt uw app geladen. Net als bij de Android-emulator kan dit soms een langzaam proces zijn, dus u moet misschien geduld hebben (gebruik dit misschien als een gelegenheid om een ​​kop koffie te halen!)

Zodra uw applicatie is geladen, wordt u geconfronteerd met een gewoon wit scherm. De sjabloon voor de Single View-app kan een functionerende iOS-applicatie zijn, maar het is niet bepaald een opwindend applicatie, dus laten we enkele UI-elementen toevoegen.

Een gebruikersinterface maken met de Interface Builder

De Interface Builder van Xcode biedt u een visuele manier om de gebruikersinterface van uw applicatie te ontwerpen en te bouwen, vergelijkbaar met hoe de Layout Editor werkt in Android Studio.

Als u naar het navigatiegebied kijkt, ziet u dat de sjabloon voor de Single View-app al een "Main.storyboard" -bestand heeft gegenereerd, wat een storyboard het dossier. Een Storyboard is een visuele weergave van de gebruikersinterface van uw app, die u kunt bewerken in de Interface Builder.

Als u het storyboard van onze app wilt bekijken, selecteert u het bestand Main.storyboard in het navigatiegebied. De Interface Builder moet automatisch worden geopend en de gebruikersinterface van uw app weergeven, die momenteel uit één scherm bestaat.

Dit scherm bevat een enkele weergave, met een pijl die naar de linkerkant van het scherm wijst. Deze pijl geeft het toegangspunt van het Storyboard aan. Dit is het eerste scherm dat de gebruiker ziet wanneer hij uw app start.

Toegang tot de objectbibliotheek van iOS

De eenvoudigste manier om uw gebruikersinterface te bouwen, is door items van Xcode's te gebruiken Objectbibliotheek. Deze bibliotheek bevat objecten met een zichtbare aanwezigheid op het scherm, zoals Afbeeldingsweergaven, Navigatiebalken en Schakelaars, en objecten die gedrag definiëren maar geen zichtbare aanwezigheid hebben, zoals gebaarherkenning en containerweergaven.

We gaan een knop maken die, wanneer erop wordt getikt, een waarschuwing weergeeft. Laten we beginnen met een knop uit de objectbibliotheek te pakken en toe te voegen aan onze app:

  • Selecteer de knop "Objectbibliotheek weergeven" rechtsonder in de Xcode-werkruimte. U kunt ook "Beeld> Hulpprogramma's> Objectbibliotheek weergeven" selecteren in het menu van Xcode.

  • De objectbibliotheek moet nu een lijst weergeven met alle verschillende items die u aan uw gebruikersinterface kunt toevoegen. Blader door deze lijst om te zien welke opties beschikbaar zijn.
  • We willen een knop toevoegen, dus typ "knop" in het tekstveld "Filter" en selecteer vervolgens de knop wanneer deze in de lijst verschijnt.
  • Sleep het knopobject naar uw canvas. Terwijl u sleept, verschijnen er een reeks horizontale en verticale hulplijnen om u te helpen de knop te positioneren. Als u tevreden bent met de plaatsing, laat u uw muis los om de knop aan uw gebruikersinterface toe te voegen.

Objecten aanpassen met de Attributes Inspector

Vervolgens moeten we wat tekst toevoegen aan de knop. U kunt objecten aanpassen met behulp van Xcode's Attributes Inspector:

  • Selecteer "Beeld> Hulpprogramma's> Attributencontrole weergeven" op de Xcode-werkbalk; de Attributes Inspector zou nu aan de rechterkant van de Xcode-werkruimte moeten verschijnen.

  • Selecteer het knopobject in uw canvas.
  • Zoek in de Attributes Inspector het gedeelte 'Titel' en vervang de standaardtekst 'Knop' door uw eigen tekst.
    Druk op de "Return" -toets op uw toetsenbord en de Interface Builder zal de knop bijwerken met uw nieuwe tekst.

Op dit punt wilt u misschien experimenteren met enkele andere attributen van de knop, u kunt bijvoorbeeld de achtergrondkleur van de knop wijzigen of het lettertype dat voor de tekst wordt gebruikt.

Voorbeeld van uw gebruikersinterface

Hoewel je je applicaties kunt testen door ze uit te voeren op de iOS-simulator, is dit niet altijd de gemakkelijkste manier om te controleren hoe je applicatie zich ontwikkelt.

Wanneer u uw gebruikersinterface bouwt, kunt u uzelf wat tijd besparen door een voorbeeld van uw wijzigingen te bekijken in het venster "Voorbeeld" van Xcode, een secundaire editor die wordt weergegeven als onderdeel van de normale Xcode-werkruimte.

  • Selecteer "Beeld> Bewerken> Assistent-editor tonen" in de menubalk van Xcode.
  • Selecteer 'Automatisch' in de menubalk van de Assistent-editor.

  • Selecteer "Preview> Main.storyboard (Preview)". De Assistent-editor geeft nu een voorbeeld van de gebruikersinterface van uw app weer naast het normale Editor-gebied.
  • Als u een voorbeeld van de gebruikersinterface van uw app in verschillende richtingen wilt bekijken, bladert u naar de onderkant van het voorbeeldvenster en selecteert u de knop 'Roteren'.

Uw gebruikersinterface verbinden met uw broncode

In de ontwikkeling van iOS zijn de app-code en uw gebruikersinterface gescheiden, tot het punt waarop we een eenvoudige gebruikersinterface hebben gemaakt zonder een enkele coderegel te hoeven schrijven. Er is echter een nadeel aan het gescheiden houden van code en gebruikersinterface: u moet expliciet een relatie leggen tussen uw broncode en uw gebruikersinterface, door u te verdiepen in de klassen UIViewController en ViewController van uw project.

UIViewController is een fundamentele bouwsteen van iOS-toepassingen, die verantwoordelijk is voor het vasthouden van UI-elementen zoals knoppen, schuifregelaars en tekstvelden. UIViewController heeft standaard een lege weergave, dus moeten we een aangepaste klasse maken die UIViewController uitbreidt, ook wel View Controller genoemd.

Als u het bestand "ViewController.swift" van uw project opent, ziet u dat de sjabloon voor de Single View-app al een View Controller voor ons heeft gegenereerd:

class ViewController: UIViewController {

Momenteel neemt deze ViewController-klasse eenvoudigweg al het gedrag over dat is gedefinieerd door UIViewController, maar u kunt dit standaardgedrag uitbreiden en aanpassen door de methoden die door UIViewController zijn gedefinieerd te negeren.Momenteel vervangt het bestand ViewController.swift bijvoorbeeld de methode viewDidLoad (), maar het is niet do alles behalve de UIViewController-versie van deze methode:

opheffen func viewDidLoad () {super.viewDidLoad () // Voer aanvullende instellingen uit na het laden van de view //}

Hoewel het buiten het bereik van deze zelfstudie valt, kunt u de reactie van de View Controller op deze gebeurtenis aanpassen door uw eigen code toe te voegen aan de methode viewDidLoad (). Hier voert u bijvoorbeeld meestal extra instellingen uit die door uw app worden vereist.

Achter de schermen creëerde de Single View App-sjabloon automatisch een verbinding tussen uw ViewController.swift-klasse en Main.storyboard. Tijdens runtime maakt uw Storyboard een instantie van ViewController en verschijnt de inhoud van uw Storyboard op het scherm.

Dit geeft ons een voorsprong, maar we moeten nog steeds de afzonderlijke elementen in ons Storyboard koppelen aan ons ViewController.swift-bestand, zodat de broncode kan communiceren met deze individuele elementen.

Onze taak is om een ​​verbinding tot stand te brengen tussen onze knop en het juiste gedeelte van onze broncode, zodat onze toepassing een waarschuwing weergeeft telkens wanneer de gebruiker op de knop tikt.

Een actiemethode maken

Tikken op een knop is een gebeurtenis, dus moeten we een maken actie methode, dat is een codedeel dat bepaalt hoe uw app moet reageren op een bepaalde gebeurtenis.

Een actiemethode maken:

  • Zorg ervoor dat in het navigatiegebied uw Main.storyboard-bestand is geselecteerd.
  • Open de Assistent-editor van Xcode door 'Beeld> Assistent-editor> Assistent-editor tonen' te selecteren.
  • Klik in de Editor-selectiebalk op "Automatisch" en selecteer vervolgens "Automatisch> ViewController.swift."
  • Op dit moment moeten zowel het ViewController.swift-bestand als het Storyboard op het scherm zichtbaar zijn. Zoek in het bestand ViewController.swift de volgende regel en voeg een paar regels lege ruimte eronder toe:

class ViewController: UIViewController {

  • Selecteer in uw Storyboard het knop UI-element zodat het blauw wordt gemarkeerd.
  • Houd Control ingedrukt en sleep de knop naar de lege ruimte die u zojuist hebt gemaakt in uw ViewController.swift-bestand. Er moet een blauwe lijn verschijnen die aangeeft waar de actiemethode wordt gemaakt.
  • Als u tevreden bent met de positie van de methode, laat u de knop los en verschijnt er een pop-up.
  • Open in de pop-up de vervolgkeuzelijst "Verbinding" en selecteer "Actie".
  • Open vervolgens de vervolgkeuzelijst 'Gebeurtenis' en selecteer 'Touch Up Inside', een gebeurtenis die wordt geactiveerd wanneer de gebruiker zijn vinger binnen de knop steekt.
  • Geef deze actie de naam "alertController."
  • Klik op 'Verbinden'.

Xcode maakt nu de volgende "alertController" -methode:

@IBAction func alertController (_ sender: Any) {}

Laten we het precies bekijken wat hier gebeurt:

1. Geef aan dat deze methode een actie is

Met het kenmerk "IBAction" wordt deze methode als actie aan de Interface Builder blootgesteld, waarmee u deze methode aan uw UI-objecten kunt koppelen:

@IBAction

2. Verklaar de methode

In Swift verklaren we een methode met behulp van het trefwoord "func", gevolgd door de naam van de methode:

func alertControlle ()

3. Definieer enkele parameters

Vervolgens definiëren we enkele optionele parameters tussen een reeks haakjes, die onze methode dan als invoer zal gebruiken.

Elke set parameters moet een naam en een type hebben, gescheiden door een dubbele punt (:).

func alertController (_ sender: Any) {

Hier accepteert de methode een parameter "afzender", die verwijst naar het object dat verantwoordelijk was voor het activeren van de actie, d.w.z. onze knop. We stellen ook dat deze parameter van het type 'Any' kan zijn.

Wanneer de gebruiker op de knop tikt, roept onze app de methode alertController (_ sender :) op.

Controleer de verbinding

Nadat we onze "alertController" -methode hebben gemaakt, kunnen we controleren of deze correct is verbonden met de knop:

  • Selecteer het bestand "Main.storyboard" in het navigatiegebied.
  • Selecteer in de menubalk van Xcode "Beeld> Hulpprogramma's> Connections Inspector weergeven". Connections Inspector zou nu aan de rechterkant van de Xcode-werkruimte moeten worden geopend.
  • Selecteer uw knop in het gebied Editor.

Connections Inspector zou nu wat informatie over deze knop moeten weergeven, waaronder een sectie 'Verzonden gebeurtenissen', die een lijst met beschikbare gebeurtenissen bevat en de bijbehorende methode die wordt opgeroepen wanneer elke gebeurtenis plaatsvindt.

We kunnen zien dat de "Touch Up Inside" -gebeurtenis is verbonden met onze "alertController" -methode, dus we weten dat elke keer dat de gebruiker op deze knop reageert, de "alertController" -methode wordt aangeroepen.

Er is echter een probleem: we hebben niet echt gedefinieerd wat er zou moeten gebeuren als de "alertController" -methode wordt aangeroepen!

Een waarschuwingsdialoogvenster maken

In iOS kunt u een waarschuwing maken met UIAlertController, wat ongeveer overeenkomt met de AlertDialog van Android.

Open uw ViewController.swift-bestand en voeg het volgende toe:

class ViewController: UIViewController {@IBAction func showAlert (_ afzender: Any) {let alertController = UIAlertController (titel: "Title",: "Hallo, wereld!", preferredStyle: .alert) alertController.addAction (UIAlertAction (titel: "Annuleren ", stijl: .default)) self.present (alertController, animated: true, oplevering: nul)}

Laten we eens nader kijken wat er hier gebeurt:

1. Verklaar een constante

In Swift declareert u constanten met het trefwoord "let", dus we beginnen met het declareren van een constante genaamd alertController:

let alertController

2. Stel de inhoud in

We kunnen nu de titel van de melding definiëren en:

let alertController = UIAlertController (titel: "Titel",: "Hallo wereld!")

3. Stel de stijl in

Aangezien dit een waarschuwing is, gebruik ik de stijl 'Waarschuwing':

let alertController = UIAlertController (titel: "Titel",: "Hallo wereld!", preferredStyle: .alert)

4. Voeg een actie toe

Vervolgens voegen we een actieknop toe met de methode addAction ():

alertController.addAction (UIAlertAction (titel: "Annuleren", stijl: .default))

5. Geef de waarschuwing weer

Nadat we ons UIAlertController-object hebben geconfigureerd, zijn we klaar om het aan de gebruiker weer te geven. In het volgende fragment vragen we de ViewController om het alertController-object met een animatie te presenteren:

self.present (alertController, geanimeerd: waar, voltooiing: nul)}

Uw voltooide iOS-app testen

Nu is het tijd om ons project op de proef te stellen:

  • Selecteer de knop "Uitvoeren" op de werkbalk van Xcode.
  • Zodra uw toepassing in de iOS-simulator verschijnt, klikt u op de knop - uw melding zou nu op het scherm moeten verschijnen!

Afsluiten

In deze tutorial hebben we praktijkervaring opgedaan met het ontwikkelen voor iOS. We hebben een eenvoudige applicatie gemaakt, bestaande uit een knop en een waarschuwing, terwijl we ons vertrouwd maakten met de Xcode IDE en de Swift-programmeertaal.

Heb je plannen om apps voor iPhone en iPad te ontwikkelen? Of verkiest u platformoverschrijdende ontwikkelingstools zoals Flutter? Laat het ons weten in de reacties hieronder!

Google betrad de martphonemarkt voor conumenten in 2016 toen het Pixel-telefoon introduceerde met het merk 'Made by Google'. Eerder had Google het Nexu-programma, dat voornamelijk referentie-a...

Phihing-zwendel i een echt probleem en het aantal phihing-e-mail dat elk jaar wordt verzonden, i de laatte tijd toegenomen. Om het ucce van phihing-oplichter te helpen voorkomen, heeft Google nu een n...

Aanbevolen Aan U