Функция ExtendedFloatingActionButton
Функция ExtendedFloatingActionButton рисует
вытянутую плавающую кнопку с подписью и знаком.
Нажатие обрабатывает параметр onClick,
текст передают в лямбду text,
иконку - в лямбду icon
через Text
и Icon
из Icons.Filled.
Синтаксис
ExtendedFloatingActionButton(
onClick = { },
text = { Text("abcde") },
icon = {
Icon(
imageVector = Icons.Filled.Add,
contentDescription = "abcde",
)
},
)
Параметры
| Параметр | Описание |
|---|---|
onClick |
Лямбда без аргументов. Срабатывает, когда пользователь нажал кнопку. |
text |
Лямбда с подписью на кнопке. Обычно
внутри вызывают Text.
|
icon |
Лямбда с иконкой слева от текста.
Обычно вызывают Icon
с Icons.Filled
и contentDescription.
|
Пример
Давайте выведем расширенную плавающую кнопку:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Add
import androidx.compose.material3.ExtendedFloatingActionButton
import androidx.compose.material3.Icon
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
ExtendedFloatingActionButton(
onClick = { },
text = { Text(text = "abcde") },
icon = {
Icon(
imageVector = Icons.Filled.Add,
contentDescription = "abcde",
)
},
)
}
}
}
На экране появится вытянутая кнопка
с иконкой плюса и подписью "abcde".
Пример
Давайте поставим две такие кнопки в столбец:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.Column
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Add
import androidx.compose.material3.ExtendedFloatingActionButton
import androidx.compose.material3.Icon
import androidx.compose.material3.Text
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
Column {
ExtendedFloatingActionButton(
onClick = { },
text = { Text(text = "abcde") },
icon = {
Icon(
imageVector = Icons.Filled.Add,
contentDescription = "abcde",
)
},
)
ExtendedFloatingActionButton(
onClick = { },
text = { Text(text = "12345") },
icon = {
Icon(
imageVector = Icons.Filled.Add,
contentDescription = "12345",
)
},
)
}
}
}
}
На экране две расширенные кнопки встанут одна под другой с разными подписями.
Смотрите также
-
функция
FloatingActionButton,
которая рисует круглую кнопку только с иконкой -
функция
SmallFloatingActionButton,
которая рисует малую круглую кнопку -
функция
LargeFloatingActionButton,
которая рисует большую круглую кнопку -
функция
Text,
которой задают подпись на кнопке