Introdução rápida ao SwiftUI

SwiftUI é uma nova maneira conveniente de criar interfaces de usuário no Xcode. Se você deseja uma rápida introdução ao SwiftUI, este post é para você.

Para começar, vamos criar um projeto com suporte ao SwiftUI. Os requisitos mínimos de sistema para isso são macOS Catalina e Xcode 11. Crie um novo projeto "Arquivo> Novo> Projeto ..." , selecione "Aplicativo de exibição única" e verifique se "Interface do usuário: SwiftUI" está selecionado .



O projeto será mais ou menos assim:



Como você deve ter notado, agora você pode ver todas as alterações imediatamente na visualização . Por exemplo, tente alterar o texto para "Olá, Habr!" . Legal sim?

Se não houver alterações, clique no botão Continuar (no canto superior direito). Se a Visualização não estiver visível - clique nas opções do Editor e verifique se Canvas está selecionado ((Opções + ⌘Command + ⌘Enter) .


Ver, Texto, Pilha ...


Se você selecionar ContentView.swift , veremos:

struct ContentView: View { var body: some View { Text(", !") } } 

Aqui vemos que o corpo do ContentView> possui um texto que exibe "Olá, Habr!" . Vamos adicionar outro texto. Se você tentar adicionar diretamente à visualização do corpo , o Xcode jurará. Para fazer isso, primeiro use o HStack ou o VStack . Pressione Command e clique em Texto (⌘Command + Text) e selecione “Incorporar no HStack” .



Este comando criará automaticamente um HStack e adicionará nosso texto lá. Agora você pode adicionar outro texto:

 struct ContentView: View { var body: some View { HStack { Text(",") Text("!") } } } 

Inspetor Swiftui


Se você clicar em “mandCommand + Text” e selecionar “Show SwiftUI Inspector ...” , um inspetor será aberto, onde você poderá alterar visualmente as propriedades do texto. Por exemplo, se no inspetor "Fonte" foi alterado para "Título grande" , o código também será alterado para .font (.largeTitle) . Muito simples:



O que é Estado ?


Para entender o que é o Estado , vamos adicionar alguma ação. Repetimos o que fizemos antes: "mandCommand + HStack" , selecione "Incorporar no VStack" e , em seguida, adicione Button a este VStack :

 struct ContentView: View { @State var tapCount = 0 var body: some View { VStack { HStack { Text(",") .font(.largeTitle) .foregroundColor(Color.green) Text("!") .font(.largeTitle) .fontWeight(.bold) } Button(action: { self.tapCount += 1 }) { Text("Tap count \(tapCount)") .font(.title) } } } } 

Cada vez que você clica no botão, alteramos o valor de tapCount . Mas o que significa estado ? Se quisermos que nossa visão seja renderizada novamente quando algum valor for alterado, devemos usar State . Nesse caso, quando clicamos no botão, alteramos o tapCount , que é designado como Estado . É por isso que, a cada clique, nosso corpo é renderizado novamente.

Visualização ao vivo


No momento, se você clicar no botão, nada acontece. Para consertar isso e funcionar como um simulador, você precisa ativar o "Live Preview" . O botão de ativação está localizado no canto inferior direito:



Agora tente novamente. Cada vez que você pressiona o botão, o valor muda.

O que vem a seguir?


Agora você tem o conceito básico de SwiftUI. Além disso, recomendo que você leia os tutoriais do SwiftUI , assista a um vídeo da WWDC sobre o SwiftUI . A documentação pode ser encontrada aqui .

O link para o projeto github está aqui .

Source: https://habr.com/ru/post/pt483316/


All Articles