当前位置:网站首页>Kotlin compose state recovery remembersaveable and remember

Kotlin compose state recovery remembersaveable and remember

2022-06-26 06:39:00 Ango cannot move

rememberSaveable  Data status can be saved . Let the data remain unchanged when the screen is rotated

First realize Parcelable Interface

Kotlin Fast implementation Parcelable Interface _ Ango Mobile Blog -CSDN Blog

Code

package com.anguomob.jecpack.activity.compose.parcelable

import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.padding
import androidx.compose.material.ButtonDefaults
import androidx.compose.material.MaterialTheme.colors
import androidx.compose.material.Text
import androidx.compose.material.TextButton
import androidx.compose.runtime.Composable
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import com.anguomob.jecpack.bean.City

@Composable
fun CityScreen() {
    val (city, setCity) = rememberSaveable {
        mutableStateOf(City(" Beijing 1", " China 1"))

    }
    Row(modifier = Modifier.padding(10.dp), verticalAlignment = Alignment.CenterVertically) {
        TextButton(onClick = {
            setCity(City(" Beijing ", " China "))
        }, colors = ButtonDefaults.buttonColors()) {
            Text(text = " Click Modify ")

        }
        Text(text = "${city.name} ${city.country}")

    }
}

First, modify the data

Then rotate the screen

You will find that the data has not changed

 

If used

remember{}

Click modify data Then rotate the screen

The data will become the value before modification ,.

原网站

版权声明
本文为[Ango cannot move]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/177/202206260636037514.html