Files
SnapAndSolve/docs/AlbumViewState.md
2026-02-09 22:20:59 +01:00

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()