Formation PUB900 : Développer une application pour iPhone avec SwiftUI, H-2024 Quelques vues SwiftUI

65.1 Text


La structure Text est beaucoup utilisée dans les différents écrans d'une application SwiftUI.

Elle permet, comme son nom le suggère, d'afficher un texte à l'écran.

Dans cette fiche :

Texte simple

Dans sa forme la plus simple, la structure Text affichera un texte composé de quelques mots.

SwiftUI

Text("Hello world!")

Texte multilignes

Pour afficher un texte sur plusieurs lignes, il suffit d'ajouter un modifieur pour limiter l'espace occupé par le texte, par exemple le modifieur .frame().

SwiftUI

Text("J'étudie en informatique au cégep de Victoriaville.")
  .frame(width: 100)

Multiligne

Taille du texte

Types dynamiques

SwiftUI vous permet de spécifier la taille du texte à l'aide de types dynamiques. Il s'agit de valeurs prédéfinies dans la structure Font.

SwiftUI

Text("Bravo!")
  .font(.largeTitle)

Il est fortement conseillé d'utiliser les types dynamiques  plutôt que des tailles fixes. Les types dynamiques permettent à l’application de s’adapter automatiquement au réglage de taille de police choisi par l’usager sur son appareil.

La taille des différents types dynamiques est spécifiée ici : https://developer.apple.com/design/human-interface-guidelines/typography#iOS-iPadOS-Dynamic-Type-sizes.

Voici un aperçu des différents types dynamiques.

Le dernier texte sur l'image utilise une taille fixe, tel que démontré dans la section plus bas.

Types dynamiques

Notez que l'usager peut modifier le réglage de taille de police sur son iPhone à partir du menu Réglages / Accessibiilté / Affichage et taille du texte / Police plus grande.

Police plus grande

Taille fixe

Lorsque le contexte l'exige, il est possible de forcer une taille en unités.

SwiftUI

Text("Texte de 25 unités")
  .font(.system(size: 25.0))

Markdown

Le texte à afficher peut utiliser le langage de balisage Markdown, que SwiftUI saura interpréter.

On déclarera d'abord le texte à l'aide d'un AttributedString().

SwiftUI

let monTexte = try! AttributedString(
  markdown: "Caractères _italiques_ **gras** ~~barrés~~")

var body: some View {
  Text(monTexte)
}

Markdown

Émoticones

En bonus, vous pouvez utiliser un Text pour afficher des émoticônes. macOS permet d'ailleurs de faire apparaître une fenêtre d'émoticônes en appuyant sur les touches⌃ Ctrl+⌘ Cmd+Espace.

SwiftUI

Text("Il fait soleil 😎")

Date ajustée selon la localisation de l'appareil mobile

Si vous avez en main une instance de Date, il est possible de la convertir en chaîne directement dans un Text grâce au paramètre style.

SwiftUI

Text(Date.now, style: .date)

Selon les configurations de l'appareil mobile, ceci afficher une date du genre 11 avril 2026 ou April 11, 2026.

Pour plus d'information

« Getting Started with SwiftUI and Working with Text ». App Coda. https://www.appcoda.com/learnswiftui/swiftui-text.html

« Typography - Supporting Dynamic Type ». Apple Developer. https://developer.apple.com/design/human-interface-guidelines/typography#Supporting-Dynamic-Type

▼Publicité

Veuillez noter que le contenu de cette fiche vous est partagé à titre gracieux, au meilleur de mes connaissances et sans aucune garantie.
Merci de partager !
Soumettre