UIKit Framework: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
UIKit Framework bezieht sich auf das Apple Framework zur Programmierung von Apps und Anwendungen.
 +
 +
Suchst du das [[UIKit Web Frontend Framework]] ?
 
== Links ==
 
== Links ==
 
  [[Swift (Programmiersprache)]]
 
  [[Swift (Programmiersprache)]]
Zeile 36: Zeile 39:
 
== Übergange von Views mit Segue ==
 
== Übergange von Views mit Segue ==
 
Mit einem Segue kannst du Übergange von Storyboards festlegen und später programmatisch aufrufen.
 
Mit einem Segue kannst du Übergange von Storyboards festlegen und später programmatisch aufrufen.
 +
[[Swift - Segue]]
  
=== Segue erstellen ===
+
== Some Views ==
* Von einem ViewController mit control zum anderen ziehen (entweder in den Ansichten (gelber Bobbel) oder im Sideview.
+
=== UITextFields ===
* Art auswählen
 
* Identifier vergeben (Property Panel) z.B. goToResults
 
 
 
=== Segue Code für den Übergang ===
 
Im Start Controller kann man nun den ZielView mit der '''performSegue Funktion''' die jeder View enthält aufrufen:
 
 
 
self.performSegue(withIdentifier: "goToResult", sender: self)
 
 
 
Wenn man außerdem '''im Zielview Properties setzen''' möchte kann man das mit der '''prepare Funktion''' machen. Diese Funktion wird automatisch aufgerufen wenn man performSegue ausführt.
 
 
 
<syntaxhighlight lang="swift">
 
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
 
    // you should check if it's the right segue
 
    if segue.identifier == "goToResult" {
 
        print(segue.identifier!)
 
        /**
 
        Originally prepare() targets a UIViewController.
 
        But as we created our view we also created a Subclass of UIViewController
 
        Thus we have to tell which subclass our destination is in the override function.
 
        We can do that by using the "as" keyword . This is called DOWNCASTING.
 
           
 
        Exclamation mark (!) means it is a forced downcast. Like with Optionals
 
        this expresses our certainty that the target is a ResultViewController
 
        */
 
        let destinationVC = segue.destination as! ResultViewController
 
        destinationVC.bmiValue = calculatorBrain.getBMIValue()
 
        destinationVC.advice = calculatorBrain.getAdvice()
 
        destinationVC.color = calculatorBrain.getColor()
 
        /**
 
        via the destination we have access to the destinations properties and can set them.
 
        */
 
    }
 
}
 
</syntaxhighlight>
 
=== Zurück zum Hauptlayer ===
 
Der neue View liegt in der Regel einfach über dem Starview. Daher müssen wir den Zielview einfach wieder schließen.
 
<syntaxhighlight lang="swift">
 
    @IBAction func recalculatePressed(_ sender: UIButton) {
 
        self.dismiss(animated: true,completion: nil)
 
    }
 
</syntaxhighlight>
 
 
 
== UITextFields ==
 
 
  [[UITextFields]]
 
  [[UITextFields]]
  
== UITableView ==
+
=== UITableView ===
 
  [[UITableView]]
 
  [[UITableView]]
 +
=== UIPicker ===
 +
[[UIPickerView]]
  
 
== UIAlertController ==
 
== UIAlertController ==
 
  [[UIAlertController]]
 
  [[UIAlertController]]
 
Erlaubt das Anzeigen von Alerts als Overlay über dem aktuellen View
 
Erlaubt das Anzeigen von Alerts als Overlay über dem aktuellen View
 +
 +
== Navigation Controller ==
 +
[[UINavigationController]] - TODO

Aktuelle Version vom 19. April 2024, 07:59 Uhr

UIKit Framework bezieht sich auf das Apple Framework zur Programmierung von Apps und Anwendungen.

Suchst du das UIKit Web Frontend Framework ?

Links[Bearbeiten]

Swift (Programmiersprache)
UIKit Framework - Snippets

Einführung[Bearbeiten]

UIKit ist eine Bibliothek von Frameworks und Klassen für die Entwicklung von Benutzeroberflächen (User Interfaces, UI) auf iOS, iPadOS, watchOS und tvOS. Sie bietet eine Reihe von vorgefertigten UI-Elementen wie Buttons, Tabellen, Sammlungen von Ansichten und vieles mehr, die von Entwicklern verwendet werden können, um native Anwendungen für Apple-Plattformen zu erstellen.

UIKit ist ein wichtiger Bestandteil von Xcode, dem integrierten Entwicklungsumgebung (IDE) von Apple, und wird häufig in Verbindung mit anderen Frameworks wie Foundation und Core Data verwendet, um vollständige Anwendungen zu erstellen.

UIKit wurde von Apple entwickelt und ist Teil der iOS-SDK (Software Development Kit). Es ist ausschließlich für die Entwicklung von Anwendungen auf Apple-Plattformen gedacht und kann nicht auf anderen Betriebssystemen verwendet werden.

Erstellen von Views[Bearbeiten]

Das UIKit hilft beim erstellen von Benutzeroberflächen und stellt viele vorgefertigte Komponenten bereit. In den UIKit Snippets siehst du ein Beispiel wie man nur mit Code einen View erstellen und von einem andern View aufrufen kann.

UIKit Framework - Snippets

In der Praxis macht man sich die Arbeit i.d.R. leichter...

Man kann sich die Arbeit stark erleichtern. Folgende Schritte sind notwendig

View mit Cocoa und Storyboard erstellen[Bearbeiten]

  1. Datei mit Template CocoaClass erstellen. Das erzeugt im Prinzip eine Datei die schon die wichtigsten Code-Snippets enthält
  2. Storyboard erstellen
  3. Storyboard mit der neu erstellten Klasse verbinden

Cocoa Touch Class[Bearbeiten]

New File > Cocoa Touch Class 
> Class z.B. ResultViewController
> Subclass of UIViewController

Storyboard erstellen[Bearbeiten]

Storyboard mit Controller verbinden[Bearbeiten]

Über den Klassennamen verbindet sich ein Storyboard mit dem Controller Code. Dafür musst du nur im StoryboardView oben links den kleinen gelben Punkt klicken (Result View Controller) und dann im rechten Bereich im Identity Inspector den richtigen Class Name angeben.

Übergange von Views mit Segue[Bearbeiten]

Mit einem Segue kannst du Übergange von Storyboards festlegen und später programmatisch aufrufen.

Swift - Segue

Some Views[Bearbeiten]

UITextFields[Bearbeiten]

UITextFields

UITableView[Bearbeiten]

UITableView

UIPicker[Bearbeiten]

UIPickerView

UIAlertController[Bearbeiten]

UIAlertController

Erlaubt das Anzeigen von Alerts als Overlay über dem aktuellen View

Navigation Controller[Bearbeiten]

UINavigationController - TODO