|
1 | 1 | package com.record.upload
|
2 | 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 | 3 | import androidx.compose.foundation.background
|
| 4 | +import androidx.compose.foundation.layout.Box |
8 | 5 | 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 |
| 6 | +import androidx.compose.foundation.layout.fillMaxSize |
| 7 | +import androidx.compose.foundation.layout.fillMaxWidth |
| 8 | +import androidx.compose.material3.Text |
12 | 9 | 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 |
| 10 | +import androidx.compose.ui.Alignment |
18 | 11 | 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 |
| 12 | +import androidx.compose.ui.text.style.TextAlign |
| 13 | +import com.record.designsystem.component.button.RecordyButton |
23 | 14 | import com.record.designsystem.component.navbar.TopNavigationBar
|
24 |
| -import com.record.ui.lifecycle.LaunchedEffectWithLifecycle |
| 15 | +import com.record.designsystem.theme.Background |
| 16 | +import com.record.designsystem.theme.Gray03 |
| 17 | +import com.record.designsystem.theme.RecordyTheme |
25 | 18 |
|
26 | 19 | @Composable
|
27 | 20 | 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( |
| 21 | + Box( |
38 | 22 | modifier = Modifier
|
39 |
| - .background(Color.Transparent) |
| 23 | + .fillMaxSize() |
| 24 | + .background(Background), |
40 | 25 | ) {
|
41 |
| - TopNavigationBar(title = "영상 선택", enableGradation = true) |
42 |
| - AsyncImage(model = uri, contentDescription = null, modifier = Modifier.size(50.dp)) |
| 26 | + Column( |
| 27 | + modifier = Modifier |
| 28 | + .align(Alignment.TopCenter), |
| 29 | + ) { |
| 30 | + TopNavigationBar(title = "영상 선택", enableGradation = true) |
| 31 | + Text( |
| 32 | + text = "ⓘ 최대 1분의 1080p 영상을 올려주세요.", |
| 33 | + color = Gray03, |
| 34 | + style = RecordyTheme.typography.caption2, |
| 35 | + maxLines = 1, |
| 36 | + modifier = Modifier.fillMaxWidth(), |
| 37 | + textAlign = TextAlign.Center, |
| 38 | + ) |
| 39 | + } |
| 40 | + RecordyButton( |
| 41 | + modifier = Modifier.align(Alignment.BottomCenter), |
| 42 | + text = "다음", |
| 43 | + enabled = true, |
| 44 | + onClick = { /*TODO*/ }, |
| 45 | + ) |
43 | 46 | }
|
44 | 47 | }
|
0 commit comments