|
| 1 | +package com.record.upload |
| 2 | + |
| 3 | +import android.net.Uri |
| 4 | +import androidx.activity.compose.rememberLauncherForActivityResult |
| 5 | +import androidx.activity.result.PickVisualMediaRequest |
| 6 | +import androidx.activity.result.contract.ActivityResultContracts |
| 7 | +import androidx.compose.foundation.background |
| 8 | +import androidx.compose.foundation.layout.Column |
| 9 | +import androidx.compose.foundation.layout.PaddingValues |
| 10 | +import androidx.compose.foundation.layout.padding |
| 11 | +import androidx.compose.foundation.layout.size |
| 12 | +import androidx.compose.runtime.Composable |
| 13 | +import androidx.compose.runtime.LaunchedEffect |
| 14 | +import androidx.compose.runtime.getValue |
| 15 | +import androidx.compose.runtime.mutableStateOf |
| 16 | +import androidx.compose.runtime.remember |
| 17 | +import androidx.compose.runtime.setValue |
| 18 | +import androidx.compose.ui.Modifier |
| 19 | +import androidx.compose.ui.graphics.Color |
| 20 | +import androidx.compose.ui.platform.LocalContext |
| 21 | +import androidx.compose.ui.unit.dp |
| 22 | +import coil.compose.AsyncImage |
| 23 | +import com.record.designsystem.component.navbar.TopNavigationBar |
| 24 | +import com.record.ui.lifecycle.LaunchedEffectWithLifecycle |
| 25 | + |
| 26 | +@Composable |
| 27 | +fun VideoPickerScreen() { |
| 28 | + var uri by remember { mutableStateOf<Uri?>(null) } |
| 29 | + val imagePicker = rememberLauncherForActivityResult( |
| 30 | + contract = ActivityResultContracts.PickVisualMedia(), |
| 31 | + onResult = { uri = it } |
| 32 | + ) |
| 33 | + LaunchedEffect(Unit) { |
| 34 | + imagePicker.launch(PickVisualMediaRequest(ActivityResultContracts.PickVisualMedia.VideoOnly)) |
| 35 | + } |
| 36 | + |
| 37 | + Column( |
| 38 | + modifier = Modifier |
| 39 | + .background(Color.Transparent) |
| 40 | + ) { |
| 41 | + TopNavigationBar(title = "영상 선택", enableGradation = true) |
| 42 | + AsyncImage(model = uri, contentDescription = null, modifier = Modifier.size(50.dp)) |
| 43 | + } |
| 44 | +} |
0 commit comments