Book Image

Android UI Development with Jetpack Compose - Second Edition

By : Thomas Künneth
5 (1)
Book Image

Android UI Development with Jetpack Compose - Second Edition

5 (1)
By: Thomas Künneth

Overview of this book

Compose has caused a paradigm shift in Android development, introducing a variety of new concepts that are essential to an Android developer’s learning journey. It solves a lot of pain points associated with Android development and is touted to become the default way to building Android apps over the next few years. This second edition has been thoroughly updated to reflect all changes and additions that were made by Google since the initial stable release, and all examples are based on Material 3 (also called Material You). This book uses practical examples to help you understand the fundamental concepts of Jetpack Compose and how to use them when you are building your own Android applications. You’ll begin by getting an in-depth explanation of the declarative approach, along with its differences from and advantages over traditional user interface (UI) frameworks. Having laid this foundation, the next set of chapters take a practical approach to show you how to write your first composable function. The chapters will also help you master layouts, an important core component of every UI framework, and then move to more advanced topics such as animation, testing, and architectural best practices. By the end of this book, you’ll be able to write your own Android apps using Jetpack Compose and Material Design.
Table of Contents (18 chapters)
1
Part 1: Fundamentals of Jetpack Compose
5
Part 2: Building User Interfaces
10
Part 3: Advanced Topics

Conventions used

There are a number of text conventions used throughout this book.

Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: “Column() contains two children, Button() and Image(). The image is visible only when showImage is true.”

A block of code is set as follows:

class MainActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContent {
      MainView()
    }
  }
}

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

TextField(
    value = name.value,
    onValueChange = {
        name.value = it
    },
    placeholder = {
        Text(text = stringResource(id = R.string.hint))
    },

Any command-line input or output is written as follows:

$ mkdir css
$ cd css

Bold: Indicates a new term, an important word, or words that you see on screen. For instance, words in menus or dialog boxes appear in bold. Here is an example: “To deploy a composable function to a real device or the Android Emulator, click on the Run Preview button.”

Tips or important notes

Appear like this.