Метод shadow
Метод shadow интерфейса
Modifier
добавляет тень вокруг формы элемента.
Высоту тени задают в
Dp,
форму - через
RoundedCornerShape.
Синтаксис
Modifier.shadow(8.dp, RoundedCornerShape(12.dp))
Параметры
| Параметр | Описание |
|---|---|
elevation |
Высота тени в dp. Большее значение даёт более мягкую и широкую тень. |
shape |
Форма, по которой строится тень. |
clip |
Обрезать ли содержимое по форме тени. Влияет на вид краёв. |
Пример
Давайте добавим тень под карточку с текстом:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.Text
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.shadow
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Text(
text = "abcde",
modifier = Modifier
.shadow(
elevation = 8.dp,
shape = RoundedCornerShape(12.dp),
)
.background(
color = Color.White,
shape = RoundedCornerShape(12.dp),
)
.padding(16.dp),
)
}
}
}
На экране белая плашка с текстом получит заметную тень по контуру.
Смотрите также
-
метод
background,
который заливает плашку -
метод
clip,
который обрезает по форме -
метод
alpha,
который меняет прозрачность -
класс
RoundedCornerShape,
форма для тени и фона