Значки

Используйте значок для отображения небольшого визуального элемента для обозначения статуса или числового значения на другом составном объекте. Вот несколько распространенных сценариев, в которых вы можете использовать значок:

  • Уведомления : отображение количества непрочитанных уведомлений на значке приложения или колокольчике уведомлений.
  • Сообщения : укажите новые или непрочитанные сообщения в приложении чата.
  • Обновления статуса : отображение статуса задачи, например «выполнено», «в работе» или «не выполнено».
  • Количество в корзине : отображение количества товаров в корзине пользователя.
  • Новый контент : выделите новый контент или функции, доступные пользователю.
Другой пример компонента значка.
Рисунок 1. Примеры значков

поверхность API

Используйте компонуемый BadgedBox для реализации значков в вашем приложении. В конечном итоге это контейнер. Вы управляете его внешним видом с помощью этих двух основных параметров:

  • content : составное содержимое, которое содержит BadgedBox . Обычно Icon .
  • badge : составной элемент, который отображается в виде значка поверх содержимого. Обычно специальный Badge можно составить.

Базовый пример

В этом фрагменте кода показана базовая реализация BadgedBox :

@Composable
fun BadgeExample() {
   
BadgedBox(
        badge
= {
           
Badge()
       
}
   
) {
       
Icon(
            imageVector
= Icons.Filled.Mail,
            contentDescription
= "Email"
       
)
   
}
}

В этом примере отображается значок, который перекрывает предоставленный составной Icon . Обратите внимание на следующее в коде:

  • BadgedBox служит общим контейнером.
  • Аргументом параметра badge BadgedBox является Badge . Поскольку Badge не имеет собственных аргументов, приложение отображает значок по умолчанию в виде небольшого красного кружка.
  • Icon служит аргументом для параметра content BadgedBox . Это значок, над которым отображается значок. В данном случае это значок почты.

Вот как это выглядит:

Простой значок, не содержащий контента.
Рисунок 2. Минимальная реализация значка.

Подробный пример

В следующем фрагменте показано, как можно отображать на значке значения, которые реагируют на действия пользователя.

@Composable
fun BadgeInteractiveExample() {
   
var itemCount by remember { mutableStateOf(0) }

   
Column(
        verticalArrangement
= Arrangement.spacedBy(16.dp)
   
) {
       
BadgedBox(
            badge
= {
               
if (itemCount > 0) {
                   
Badge(
                        containerColor
= Color.Red,
                        contentColor
= Color.White
                   
) {
                       
Text("$itemCount")
                   
}
               
}
           
}
       
) {
           
Icon(
                imageVector
= Icons.Filled.ShoppingCart,
                contentDescription
= "Shopping cart",
           
)
       
}
       
Button(onClick = { itemCount++ }) {
           
Text("Add item")
       
}
   
}
}

В этом примере реализуется значок корзины покупок со значком, который отображает количество товаров в корзине пользователя.

  • BadgedBox отображается только в том случае, если количество элементов превышает 0.
  • containerColor и contentColor управляют внешним видом значка.
  • Text , который можно составить для слота содержимого Badge отображается внутри значка. В данном случае отображается количество товаров в корзине.

Эта реализация выглядит следующим образом:

Реализация значка, содержащая количество товаров в корзине.
Рисунок 3. Значок, отображающий количество товаров в корзине.

Дополнительные ресурсы

,

Используйте значок для отображения небольшого визуального элемента для обозначения статуса или числового значения на другом составном объекте. Вот несколько распространенных сценариев, в которых вы можете использовать значок:

  • Уведомления : отображение количества непрочитанных уведомлений на значке приложения или колокольчике уведомлений.
  • Сообщения : укажите новые или непрочитанные сообщения в приложении чата.
  • Обновления статуса : отображение статуса задачи, например «выполнено», «в работе» или «не выполнено».
  • Количество в корзине : отображение количества товаров в корзине пользователя.
  • Новый контент : выделите новый контент или функции, доступные пользователю.
Другой пример компонента значка.
Рисунок 1. Примеры значков

поверхность API

Используйте компонуемый BadgedBox для реализации значков в вашем приложении. В конечном итоге это контейнер. Вы управляете его внешним видом с помощью этих двух основных параметров:

  • content : составное содержимое, которое содержит BadgedBox . Обычно Icon .
  • badge : составной элемент, который отображается в виде значка поверх содержимого. Обычно специальный Badge можно составить.

Базовый пример

В этом фрагменте кода показана базовая реализация BadgedBox :

@Composable
fun BadgeExample() {
   
BadgedBox(
        badge
= {
           
Badge()
       
}
   
) {
       
Icon(
            imageVector
= Icons.Filled.Mail,
            contentDescription
= "Email"
       
)
   
}
}

В этом примере отображается значок, который перекрывает предоставленный составной Icon . Обратите внимание на следующее в коде:

  • BadgedBox служит общим контейнером.
  • Аргументом параметра badge BadgedBox является Badge . Поскольку Badge не имеет собственных аргументов, приложение отображает значок по умолчанию в виде небольшого красного кружка.
  • Icon служит аргументом для параметра content BadgedBox . Это значок, над которым отображается значок. В данном случае это значок почты.

Вот как это выглядит:

Простой значок, не содержащий контента.
Рисунок 2. Минимальная реализация значка.

Подробный пример

В следующем фрагменте показано, как можно отображать на значке значения, которые реагируют на действия пользователя.

@Composable
fun BadgeInteractiveExample() {
   
var itemCount by remember { mutableStateOf(0) }

   
Column(
        verticalArrangement
= Arrangement.spacedBy(16.dp)
   
) {
       
BadgedBox(
            badge
= {
               
if (itemCount > 0) {
                   
Badge(
                        containerColor
= Color.Red,
                        contentColor
= Color.White
                   
) {
                       
Text("$itemCount")
                   
}
               
}
           
}
       
) {
           
Icon(
                imageVector
= Icons.Filled.ShoppingCart,
                contentDescription
= "Shopping cart",
           
)
       
}
       
Button(onClick = { itemCount++ }) {
           
Text("Add item")
       
}
   
}
}

В этом примере реализуется значок корзины покупок со значком, который отображает количество товаров в корзине пользователя.

  • BadgedBox отображается только в том случае, если количество элементов превышает 0.
  • containerColor и contentColor управляют внешним видом значка.
  • Text , который можно составить для слота содержимого Badge отображается внутри значка. В данном случае отображается количество товаров в корзине.

Эта реализация выглядит следующим образом:

Реализация значка, содержащая количество товаров в корзине.
Рисунок 3. Значок, отображающий количество товаров в корзине.

Дополнительные ресурсы

,

Используйте значок для отображения небольшого визуального элемента для обозначения статуса или числового значения на другом составном объекте. Вот несколько распространенных сценариев, в которых вы можете использовать значок:

  • Уведомления : отображение количества непрочитанных уведомлений на значке приложения или колокольчике уведомлений.
  • Сообщения : укажите новые или непрочитанные сообщения в приложении чата.
  • Обновления статуса : отображение статуса задачи, например «выполнено», «в работе» или «не выполнено».
  • Количество в корзине : отображение количества товаров в корзине пользователя.
  • Новый контент : выделите новый контент или функции, доступные пользователю.
Другой пример компонента значка.
Рисунок 1. Примеры значков

поверхность API

Используйте компонуемый BadgedBox для реализации значков в вашем приложении. В конечном итоге это контейнер. Вы управляете его внешним видом с помощью этих двух основных параметров:

  • content : составное содержимое, которое содержит BadgedBox . Обычно Icon .
  • badge : составной элемент, который отображается в виде значка поверх содержимого. Обычно специальный Badge можно составить.

Базовый пример

В этом фрагменте кода показана базовая реализация BadgedBox :

@Composable
fun BadgeExample() {
   
BadgedBox(
        badge
= {
           
Badge()
       
}
   
) {
       
Icon(
            imageVector
= Icons.Filled.Mail,
            contentDescription
= "Email"
       
)
   
}
}

В этом примере отображается значок, который перекрывает предоставленный составной Icon . Обратите внимание на следующее в коде:

  • BadgedBox служит общим контейнером.
  • Аргументом параметра badge BadgedBox является Badge . Поскольку Badge не имеет собственных аргументов, приложение отображает значок по умолчанию в виде небольшого красного кружка.
  • Icon служит аргументом для параметра content BadgedBox . Это значок, над которым отображается значок. В данном случае это значок почты.

Вот как это выглядит:

Простой значок, не содержащий контента.
Рисунок 2. Минимальная реализация значка.

Подробный пример

В следующем фрагменте показано, как можно отображать на значке значения, которые реагируют на действия пользователя.

@Composable
fun BadgeInteractiveExample() {
   
var itemCount by remember { mutableStateOf(0) }

   
Column(
        verticalArrangement
= Arrangement.spacedBy(16.dp)
   
) {
       
BadgedBox(
            badge
= {
               
if (itemCount > 0) {
                   
Badge(
                        containerColor
= Color.Red,
                        contentColor
= Color.White
                   
) {
                       
Text("$itemCount")
                   
}
               
}
           
}
       
) {
           
Icon(
                imageVector
= Icons.Filled.ShoppingCart,
                contentDescription
= "Shopping cart",
           
)
       
}
       
Button(onClick = { itemCount++ }) {
           
Text("Add item")
       
}
   
}
}

В этом примере реализуется значок корзины покупок со значком, который отображает количество товаров в корзине пользователя.

  • BadgedBox отображается только в том случае, если количество элементов превышает 0.
  • containerColor и contentColor управляют внешним видом значка.
  • Text , который можно составить для слота содержимого Badge отображается внутри значка. В данном случае отображается количество товаров в корзине.

Эта реализация выглядит следующим образом:

Реализация значка, содержащая количество товаров в корзине.
Рисунок 3. Значок, отображающий количество товаров в корзине.

Дополнительные ресурсы

,

Используйте значок для отображения небольшого визуального элемента для обозначения статуса или числового значения на другом составном объекте. Вот несколько распространенных сценариев, в которых вы можете использовать значок:

  • Уведомления : отображение количества непрочитанных уведомлений на значке приложения или колокольчике уведомлений.
  • Сообщения : укажите новые или непрочитанные сообщения в приложении чата.
  • Обновления статуса : отображение статуса задачи, например «выполнено», «в работе» или «не выполнено».
  • Количество в корзине : отображение количества товаров в корзине пользователя.
  • Новый контент : выделите новый контент или функции, доступные пользователю.
Другой пример компонента значка.
Рисунок 1. Примеры значков

поверхность API

Используйте компонуемый BadgedBox для реализации значков в вашем приложении. В конечном итоге это контейнер. Вы управляете его внешним видом с помощью этих двух основных параметров:

  • content : составное содержимое, которое содержит BadgedBox . Обычно Icon .
  • badge : составной элемент, который отображается в виде значка поверх содержимого. Обычно специальный Badge можно составить.

Базовый пример

В этом фрагменте кода показана базовая реализация BadgedBox :

@Composable
fun BadgeExample() {
   
BadgedBox(
        badge
= {
           
Badge()
       
}
   
) {
       
Icon(
            imageVector
= Icons.Filled.Mail,
            contentDescription
= "Email"
       
)
   
}
}

В этом примере отображается значок, который перекрывает предоставленный составной Icon . Обратите внимание на следующее в коде:

  • BadgedBox служит общим контейнером.
  • Аргументом параметра badge BadgedBox является Badge . Поскольку Badge не имеет собственных аргументов, приложение отображает значок по умолчанию в виде небольшого красного кружка.
  • Icon служит аргументом для параметра content BadgedBox . Это значок, над которым отображается значок. В данном случае это значок почты.

Вот как это выглядит:

Простой значок, не содержащий контента.
Рисунок 2. Минимальная реализация значка.

Подробный пример

В следующем фрагменте показано, как можно отображать на значке значения, которые реагируют на действия пользователя.

@Composable
fun BadgeInteractiveExample() {
   
var itemCount by remember { mutableStateOf(0) }

   
Column(
        verticalArrangement
= Arrangement.spacedBy(16.dp)
   
) {
       
BadgedBox(
            badge
= {
               
if (itemCount > 0) {
                   
Badge(
                        containerColor
= Color.Red,
                        contentColor
= Color.White
                   
) {
                       
Text("$itemCount")
                   
}
               
}
           
}
       
) {
           
Icon(
                imageVector
= Icons.Filled.ShoppingCart,
                contentDescription
= "Shopping cart",
           
)
       
}
       
Button(onClick = { itemCount++ }) {
           
Text("Add item")
       
}
   
}
}

В этом примере реализуется значок корзины покупок со значком, который отображает количество товаров в корзине пользователя.

  • BadgedBox отображается только в том случае, если количество элементов превышает 0.
  • containerColor и contentColor управляют внешним видом значка.
  • Text , который можно составить для слота содержимого Badge отображается внутри значка. В данном случае отображается количество товаров в корзине.

Эта реализация выглядит следующим образом:

Реализация значка, содержащая количество товаров в корзине.
Рисунок 3. Значок, отображающий количество товаров в корзине.

Дополнительные ресурсы