Your First Kotlin Android App: An App From Scratch

Aug 15 2023 · Kotlin 1.8.20, Android 13, Android Studio Flamingo | 2022.2.1

Part 3: Coding in Kotlin

21. Understand Kotlin's Standard Library

Episode complete

Play next episode

Next
About this episode

Leave a rating/review

See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 20. Introduction Next episode: 22. Return Data From a Function

Get immediate access to this and 4,000+ other videos and books.

Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and 4,000+ professional videos in a single subscription, it's simply the best investment you can make in your development career.

Learn more Already a subscriber? Sign in.

Notes: 21. Understand Kotlin's Standard Library

Kotlin Standard Library documentation

You can replace your code with the one below to generated a new target value based on the current system time. More info in the link here: Random number generating same value on rebuild - Stack Overflow

val randomGenerator = Random(System.currentTimeMillis())
var targetValue by rememberSaveable { mutableStateOf(randomGenerator.nextInt(1, 100)) }

Heads up... You’re accessing parts of this content for free, with some sections shown as obfuscated text.

Heads up... You’re accessing parts of this content for free, with some sections shown as obfuscated text.

Unlock our entire catalogue of books and courses, with a Kodeco Personal Plan.

Unlock now

Kotlin comes with many built-in data types and functions that you can use in your own apps to complete a variety of common programming tasks. This is known as the Kotlin Standard Library.

var targetValue by rememberSaveable { mutableStateOf(Random.nextInt(1, 100)) }
GamePrompt(targetValue = targetValue)
@Composable
fun GamePrompt(targetValue: Int, modifier: Modifier = Modifier) {
  //...
}
Text(
  "$targetValue", // New Code
  fontSize = 32.sp,
  fontWeight = FontWeight.Bold,
  modifier = Modifier.padding(8.dp)
)
Text(
// "$targetValue",
  targetValue.toString(),
  //...
)