SwiftUI with iOS 13: Achieve A Beautiful UI with Less Work

by Jul 24, 2019#FrontPage, #iOS, #UIUXDesign

Printer Icon
P

Swift UI was one of the most exciting announcements at WWDC 2019. This new framework makes it easier and faster for developers to build better user interface code with fewer errors, providing nearly automatic support for device capabilities like Dark Mode, advanced Accessibility and Dynamic Type among others.

Example SwiftUI Code
import SwiftUI
struct Content : View{
   @State var model = Themes.listModel
   var body: some View{
      List(model.items, action:model.selectItem){ item in
         Image(item.image)
         VStack(aligment: .leading){
            Text(item.title)
            Text(item.subtitle)
            .color(.gray)
         }
      }
   }
}

SwiftUI uses a declarative syntax, this lets you write your code in a more ‘natural way’, where you just have to state what  the UI should do. Creating a table of items with labels and images with specific fonts, colors and animations with a beautiful smooth layout has never been easier!

But wait! There’s more… SwiftUI is not alone, it’s accompanied by one of the best Xcode design tools ever!

Previews will let you build you’re UI as easy as dragging and dropping, keeping both the canvas and the code editor in sync, and since Xcode is recompiling the changes automatically, testing how you’re UI looks on any device, orientation, with different font sizes, localizations or Dark Mode has become easier than ever.

SwiftUI Preview in Action

Furthermore, SwiftUI is native on all Apple Platforms. So, as the saying goes, you can “Learn once, apply everywhere”.

What about storyboards?

If you create a new project with Xcode 11 & SwiftUI you will see that there is no main.storyboard in the project directory. It seems that Apple intents to replace storyboards with SwiftUI for new projects targeting iOS 13 and above. If you want lo learn more about this exciting new framework, check out the following links:

Sources

RELEATED BLOG POSTS

Cross-platform frameworks: React Native vs. Flutter

Cross-platform frameworks: React Native vs. Flutter

There are several cross-platform frameworks in the market today: Flutter, React Native, Ionic, Cordova, and Xamarin—to name the most important ones. There are currently only two serious options to consider; Flutter and React Native—which are the leading market players in the cross-platform space.

GET IN TOUCH!