사용자 도구

사이트 도구


android:rememberasyncimagepainter
rememberasyncimagepainter

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

android:rememberasyncimagepainter [2024/07/28 02:13] – 만듦 이거니맨android:rememberasyncimagepainter [2024/07/28 02:51] (현재) – 예시 이거니맨
줄 33: 줄 33:
             imageUri.value             imageUri.value
     )     )
 +</code>
 +
 +
 +===== 활용하기 ===== 
 +
 +다음은 예시 코드이다. 
 +
 +<code kotlin>
 +@Composable
 +fun ProfileImage()
 +{
 +    val imageUri = rememberSaveable { mutableStateOf("") }
 +    val painter = rememberAsyncImagePainter(
 +        if (imageUri.value.isEmpty())
 +            R.drawable.ic_user
 +        else
 +            imageUri.value
 +    )
 +
 +    val launcher = rememberLauncherForActivityResult(contract = ActivityResultContracts.GetContent(),
 +        )
 +    {
 +        uri : Uri? ->
 +        uri?.let { imageUri.value = it.toString()}
 +    }
 +
 +    Column (modifier = Modifier
 +        .padding(8.dp)
 +        .fillMaxWidth(),
 +        horizontalAlignment = Alignment.CenterHorizontally)
 +    {
 +        Card(shape = CircleShape, modifier = Modifier
 +            .padding(8.dp)
 +            .size(100.dp))
 +        {
 +            Image(painter = painter, contentDescription = null,
 +                modifier = Modifier
 +                    .wrapContentSize()
 +                    .clickable { launcher.launch("image/*")},
 +                contentScale = ContentScale.Crop)
 +        }
 +        Text(text = "Change Profile Picture")
 +    }
 +}
 </code> </code>
android/rememberasyncimagepainter.1722100439.txt.gz · 마지막으로 수정됨: 2024/07/28 02:13 저자 이거니맨