@Composable fun ButtonContainer(){ val buttonBorderGradient = Brush.horizontalGradient(listOf(Color.Yellow, Color.Red)) val interactionSourceForSecondButton = remember { MutableInteractionSource() } val isPressedForSecondButton by interactionSourceForSecondButton.collectIsPressedAsState() val shadowRadius = if (isPressedForSecondButton) 0.dp else 10.dp // 버튼 클릭되었을때 그림자의 애니메이션 효과 적용 val shadowRadiusWithAnim: Dp by animateDpAsState(targetValue = shadowRadius) Button( elevation = ButtonDefaults.elevation( defaultElevation = 0.dp, pressedElevation = 0.dp, disabledElevation = 0.dp ), enabled = true, shape = RoundedCornerShape(10.dp), border = BorderStroke(4.dp, buttonBorderGradient), colors = ButtonDefaults.buttonColors( backgroundColor = Color.Black, disabledBackgroundColor = Color.LightGray ), interactionSource = interactionSourceForSecondButton, modifier = Modifier.drawColoredShadow( color = Color.Red, alpha = 0.5f, borderRadius = 10.dp, shadowRadius = shadowRadiusWithAnim, offsetX = 0.dp, offsetY = 5.dp ), onClick = { Log.d("TAG","Button 5가 클릭 되었다.") }) { Text(text = "Button 5", color = Color.White) } }