1.0 KiB
1.0 KiB
AlbumViewState
data class AlbumViewState(
val tempFileUrl: Uri? = null,
val selectedPictures: List<ImageBitmap> = emptyList()
)
Zweck: Immutable State-Container für Album-UI.
Properties
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
tempFileUrl |
Uri? |
null |
Temporäre URI für Kamera-Aufnahme |
selectedPictures |
List<ImageBitmap> |
emptyList() |
Alle ausgewählten/aufgenommenen Bilder |
Verwendungsbeispiel
// Initialisierung
val albumViewModel = remember { AlbumViewModel(Dispatchers.Default) }
// State beobachten
val viewState by albumViewModel.viewStateFlow.collectAsState()
// Kamera öffnen
albumViewModel.onReceive(Intent.OnPermissionGrantedWith(context))
val cameraUri = viewState.tempFileUrl
// Bild gespeichert
albumViewModel.onReceive(Intent.OnImageSavedWith(context))
// Bilder hochladen
viewState.selectedPictures.forEach { bitmap ->
mapViewModel.uploadImageAsAttachment(bitmap)
}
albumViewModel.clearSelection()