Есть ли способ сохранить обновленные значения цены и других цен после выбора изображение?
Код: Выделить всё
@Composable
fun DisplayProductInfo() {
// Using `mutableStateOf` for state tracking
var price: Price? by remember { mutableStateOf(null) }
var otherPrice: Price? by remember { mutableStateOf(null) }
var pickedImageUri: Uri by remember { mutableStateOf(Uri.EMPTY) }
// Reference to the Firebase database
val ref = Firebase.database.getReferenceFromUrl("productReferenceUrl")
// Firebase event listener
val eventListener = object : ValueEventListener {
override fun onDataChange(snapshot: DataSnapshot) {
if (snapshot.exists()) {
val product = snapshot.getValue(Product::class.java)
price = product?.price
otherPrice = product?.unitOtherPrice
}
}
override fun onCancelled(error: DatabaseError) {
// Handle the error appropriately
Log.e("FirebaseError", "Database read cancelled: ${error.message}")
}
}
// Attach the Firebase listener
LaunchedEffect(Unit) {
ref.addValueEventListener(eventListener)
}
// Image picker
val pickImageResult = rememberLauncherForActivityResult(
contract = ActivityResultContracts.PickVisualMedia()
) { uri: Uri? ->
uri?.let {
pickedImageUri = it
}
}
// Triggering the image picker
Button(onClick = { pickImageResult.launch(PickVisualMediaRequest(ActivityResultContracts.PickVisualMedia.ImageOnly)) }) {
Text(text = "Pick Image")
}
// Displaying values for testing purposes
Text(text = "Price: ${price?.toString() ?: "Not Available"}")
Text(text = "Other Price: ${otherPrice?.toString() ?: "Not Available"}")
Text(text = "Picked Image URI: ${pickedImageUri}")
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... fter-image