Π Π°Π·Π½ΠΎΠ΅

Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ тСкст ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅: html — Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π±Π»ΠΎΠΊΠΈ с скрытым содСрТаниСм

08.08.2023

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

BBSpoiler β€” Плагин для WordPress

  • Π”Π΅Ρ‚Π°Π»ΠΈ
  • ΠžΡ‚Π·Ρ‹Π²Ρ‹
  • Установка
  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡ€ΡΡ‚Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ тСкста вашСй записи Π² красиво ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ ΠΏΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° Π½Π΅Π³ΠΎ. Плагин ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡ€ΠΈ создании FAQ страниц, для скрытия ΠΎΠ±ΡŠΠ΅ΠΌΠ½Ρ‹Ρ… ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΎΠΊ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ.

Плагин создаСт свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«SpoilerΒ» Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ спойлСры Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Ρ‡Π΅Ρ€Π΅Π· вставку Ρ‚Π΅Π³ΠΎΠ². НапримСр:

[spoiler title='Title']Spoiler content[/spoiler]

ΠΈΠ»ΠΈ

[spoiler title='Title' collapse_link='no']Spoiler content[/spoiler]

Если Π²Π°ΠΌ понравился ΠΌΠΎΠΉ ΠΏΠ»Π°Π³ΠΈΠ½, Ρ‚ΠΎ поТалуйста ΠΏΠΎΡΡ‚Π°Π²ΡŒΡ‚Π΅ Π΅ΠΌΡƒ 5 Π·Π²Π΅Π·Π΄.

  • Кнопка «Spoiler» ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠ»Π°Π³ΠΈΠ½Π°.
  • ΠŸΡ€ΠΈΠΌΠ΅Ρ€ спойлСра.
  • ΠŸΡ€ΠΈΠΌΠ΅Ρ€ спойлСра с ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌΠΈ.
  • Π”ΠΎΡ‡Π΅Ρ€Π½ΠΈΠ΅ спойлСры Π² Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ спойлСрС.
  • Π‘ΠΏΠΎΠΉΠ»Π΅Ρ€ Π² Ρ‚Π΅ΠΌΠ΅ bbPress.
  • ВсС Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Π΅ стили.
  1. Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉΡ‚Π΅ ΠΏΠ°ΠΏΠΊΡƒ ΠΏΠ»Π°Π³ΠΈΠ½Π° bbspoiler Π² /wp-content/plugins/.
  2. АктивируйтС ΠΏΠ»Π°Π³ΠΈΠ½ Ρ‡Π΅Ρ€Π΅Π· мСню ΠŸΠ»Π°Π³ΠΈΠ½Ρ‹.
  3. Π­Ρ‚ΠΎ всС.

ΠšΠ½ΠΎΠΏΠΊΡƒ ΠΏΠ»Π°Π³ΠΈΠ½Π° Β«SpoilerΒ» Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅.

Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Ρ‹ Π² тСкстС спойлСра?

Π”Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ спойлСра Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ 3 ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π° тСкста:

[spoiler title='Title' collapse_link='true']First Paragraph
Second Paragraph
Third Paragraph[/spoiler]

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ спойлСры?

Π”Π°, Π½ΠΎ Π½Π΅ большС 2 ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΡˆΠΎΡ€Ρ‚ΠΊΠΎΠ΄Π°
Ρ†ΠΈΡ„Ρ€Ρƒ 2, ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

[spoiler title='Parent']
[spoiler2 title='Child 1']text[/spoiler2]
[spoiler2 title='Child 2']text[/spoiler2]
[/spoiler]

Плагин ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ?

Π”Π°, для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ translate.wordpress.org.

It was a problematic weak point found in BBSpoiler Plugin to 2. 01 on WordPress (WordPress Plugin). Which affects an unknown function of the Shortcode Handler component. Manipulation of an unknown input leads to a vulnerability class cross site scripting weak point. The weak point is published on 20/04/2023 (not defined). The advisory is available for download at wordfence dot com. This vulnerability is treated as CVE-2023-23873. There are no technical details still an exploit known. There is no known information on measures. The use of an alternative product is useful.

всС ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚! ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ» Π½Π° вСрсии 6.2

Π­Ρ‚ΠΎΡ‚ ΠΏΠ»Π°Π³ΠΈΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Π² своСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Для бСсплатного ΠΏΠ»Π°Π³ΠΈΠ½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ. ΠŸΠΎΠ»ΡŒΠ·ΡƒΡŽΡΡŒ ΠΏΠΎΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ созданиСм ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… спойлСров ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ†Π²Π΅Ρ‚Π°. Π‘ΠΎΠ»ΡŒΡˆΠΎΠ΅ спасибо Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ! I use this plugin in my project. For a free plugin, the functionality is very good. So far, I use only the creation of the simplest spoilers of the same color. Many thanks to the developers!

Бпасибо

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π»Π΅Π³ΠΊΠΈΠΉ ΠΏΠ»Π°Π³ΠΈΠ½ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… Π½Π°Π²ΠΎΡ€ΠΎΡ‚ΠΎΠ²

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΠ»Π°Π³ΠΈΠ½. Π‘Ρ‹Π»ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ супСр Ссли Π±Ρ‹ Π±Ρ‹Π»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ для описания ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ woocommerce Π±Π΅Π· ΡˆΠΎΡ€Ρ‚ΠΊΠΎΠ΄Π°. Π’.Π΅. ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ — выставляСм Π² настройках «ΡΠΊΡ€Ρ‹Ρ‚ΡŒ описаниС ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΠΏΠΎΠ΄ спойлСр», ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ тСкста, Π° ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄ спойлСр.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС 28 ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ²

Β«BBSpoilerΒ» β€” ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Π’ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Π° внСсли свой Π²ΠΊΠ»Π°Π΄ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ участники:

Участники

  • Flector

Β«BBSpoilerΒ» ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° 8 языков. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΎΠ² Π·Π° ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Ρƒ.

ΠŸΠ΅Ρ€Π΅Π²Π΅ΡΡ‚ΠΈ Β«BBSpoilerΒ» Π½Π° ваш язык.

ЗаинтСрСсованы Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅?

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ SVN Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡˆΠΈΡ‚Π΅ΡΡŒ Π½Π° ΠΆΡƒΡ€Π½Π°Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎ RSS.

2.01
  • исправлСна ошибка Β«ReferenceErrorΒ».
  • Π² этой вСрсии Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹ языковыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· дистрибутива ΠΏΠ»Π°Π³ΠΈΠ½Π° (Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ автоматичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ с сайта translate.wordpress.org)
2.00
  • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ 10 Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Ρ… стилСй.
1.01
  • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° bbPress
1.00
  • пСрвая вСрсия

ΠœΠ΅Ρ‚Π°

  • ВСрсия: 2.01
  • ОбновлСниС: 9 мСсяцСв Π½Π°Π·Π°Π΄
  • Активных установок: 6Β 000+
  • ВСрсия WordPress: 3.9 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅
  • БовмСстим Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ: 6.1.3
  • Π―Π·Ρ‹ΠΊΠΈ:

    English (US), German, Italian, Russian, Spanish (Mexico), Spanish (Spain), Spanish (Venezuela), Swedish ΠΈ Ukrainian.

    ΠŸΠ΅Ρ€Π΅Π²Π΅ΡΡ‚ΠΈ Π½Π° ваш язык

  • ΠœΠ΅Ρ‚ΠΊΠΈ:

    Boxboxescollapseexpandhide

  • Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ

ΠžΡ†Π΅Π½ΠΊΠΈ

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС

  • 5 Π·Π²Ρ‘Π·Π΄ 27
  • 4 Π·Π²Π΅Π·Π΄Ρ‹ 0
  • 3 Π·Π²Π΅Π·Π΄Ρ‹ 0
  • 2 Π·Π²Π΅Π·Π΄Ρ‹ 0
  • 1 Π·Π²Π΅Π·Π΄Π° 2

Π’ΠΎΠΉΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Π·Ρ‹Π².

Участники

  • Flector

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°

РСшСно ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π·Π° послСдниС 2 мСсяца:

0 ΠΈΠ· 1

ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Ρ„ΠΎΡ€ΡƒΠΌ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ

ΠŸΠΎΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅

Would you like to support the advancement of this plugin?

ΠŸΠΎΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΠ»Π°Π³ΠΈΠ½Π°

Π‘Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π½ΠΈΠ΅ частСй Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°

Word для Microsoft 365 Word для Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Word 2021 Word 2019 WordΒ 2016 Word 2013 Π•Ρ‰Π΅…МСньшС

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π°Π΄ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ ΠΈ слоТным Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ всС части, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ. Если Π²Ρ‹ считаСтС, Ρ‡Ρ‚ΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ сводку ΠΈ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΅Π΅ для Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ сводку ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ свСдСния.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ содСрТимоС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° зависит ΠΎΡ‚ уровня Π΅Π³ΠΎ структур. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ быстро Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ структуры ΠΈ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° удобоятной, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнных стилСй Word.

ПослС примСнСния стиля Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΏΡ€ΠΈ Π½Π°Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ малСнький Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ тСкст ΠΈ ΠΏΠΎΠ΄Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.

Π‘ΠΎΠ²Π΅Ρ‚: Если Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π½Π° сСнсорном устройствС, ΠΊΠΎΡΠ½ΠΈΡ‚Π΅ΡΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ курсор Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ.

Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ Π΅Ρ‰Π΅ Ρ€Π°Π·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ эту Ρ‡Π°ΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ всС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅, Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΏΡ€Π°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡ‹ΡˆΠΈ ΠΈ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ ΠΈΠ»ΠΈ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ > Π Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ всС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ всС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ.

Когда Π²Ρ‹ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Ρ‹. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ открывался со свСрнутными Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ здСсь дСйствия.

  1. org/ListItem»>

    ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ курсор Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ.

  2. На Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Главная Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ стрСлку Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Абзац.

  3. Π’ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅ Абзац ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π΅ Π‘Π²Π΅Ρ€Π½ΡƒΡ‚ΠΎ.

  4. НаТмитС ΠΊΠ½ΠΎΠΏΠΊΡƒ ОК.

Работая Π½Π°Π΄ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΌ, слоТным Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ Π² классичСском ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Word, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅Ρ€Π½ΡƒΡ‚ΡŒ всС части, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ.

К соТалСнию, Π² Word Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΅Ρ‰Π΅ Π½Π΅Ρ‚.

Если Ρƒ вас Π΅ΡΡ‚ΡŒ классичСскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Word, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π² Π½Π΅ΠΌ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π² Word. Π’Π°ΠΊ Π²Ρ‹ смоТСтС ΡΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»Ρ‹. Однако ΠΏΡ€ΠΈ просмотрС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° Π² Word Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ свСрнутыС Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ.

ΠžΡ‚ΠΊΡ€Ρ‹Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π² Word, свСрнитС ΠΈΠ»ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ части. Π—Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ CTRL+S, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Π² исходном располоТСнии.

Jetpack Compose: DropDown Menu

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ пространство для отобраТСния ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π½Π° экранС. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ мСсто ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ список ΠΎΠΏΡ†ΠΈΠΉ для Π²Ρ‹Π±ΠΎΡ€Π°, β€” это Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Β«ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» 3Β» содСрТит нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, каскадная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ созданиС Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… мСню Π² Jetpack Compose.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим:

  • Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ DropdownMenu ΠΈ ExposedDropdownMenuBox
  • ВозмоТности «каскадной» Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ
  • Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню
  • Как Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с DropdownMenu , ExposedDropdownMenu Box ΠΈ CascadeDropdownMenu Π² тСстах ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ основано Π½Π° зависимостях ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… вСрсий:

  • androidx.compose.material3:material3:1.0.1 (спСцификация: 2023.01.00)
  • me.saket.cascade:cascade-compose: 2.0.0-rc01

πŸ’‘

ОбС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Β«materialΒ» ΠΈ Β«material3Β» ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ DropdownMenu ΠΈ ExposedDropdownMenuBox , Π½ΠΎ свойства Π² этих рСализациях Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Β«material3Β».

БущСствуСт нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню Π² Jetpack Compose, ΠΈ всС ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΠ°ΠΊΠ΅Ρ‚Π° Β«androidx.compose.material3Β»:

  • DropdownMenu прСдставляСт собой Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ с нСсколькими Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ родитСля для отобраТСния Π½Π° экранС.
  • ExposedDropdownMenuBox ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ элСмСнт ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ «каскад», которая позволяСт Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ CascadeDropdownMenu . Π’ качСствС Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ влоТСнная рСализация Β«DropdownMenuΒ» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π½Π° основС ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ DropdownMenu .

Π”Π°Π²Π°ΠΉΡ‚Π΅ создадим ΡΠΎΡΡ‚Π°Π²Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ с мСню Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ». DropDownMenu появится, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π½Π°ΠΆΠΌΠ΅ΠΌ Π·Π½Π°Ρ‡ΠΎΠΊ мСню Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ». ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ DropdownMenu ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ нСсколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² DropdownMenuItem .

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ DropDownMenu с опциями Β«Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΒ» ΠΈ Β«Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒΒ».

 @Боставной
вСсСло Demo_DropDownMenu() {
    val контСкст = LocalContext.current
    var Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ { mutableStateOf(false) }
    ΠšΠΎΡ€ΠΎΠ±ΠΊΠ°(
        ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.fillMaxWidth()
            .wrapContentSize(Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅.Π’Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†)
    ) {
        IconButton(onClick = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = !Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ}) {
            Икона(
                Π²Π΅ΠΊΡ‚ΠΎΡ€ изобраТСния = Icons.Default.MoreVert,
                contentDescription = "Π•Ρ‰Π΅"
            )
        }
        Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню(
            Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
            onDismissRequest = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = лоТь}
        ) {
            Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                тСкст = {ВСкст("Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ")},
                onClick = { Toast. makeText(контСкст, "Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ", Toast.LENGTH_SHORT).show() }
            )
            Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                тСкст = {ВСкст("Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ")},
                onClick = { Toast.makeText(контСкст, "Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ", Toast.LENGTH_SHORT).show() }
            )
        }
    }
}
 

БоставляСмая функция DropdownMenu содСрТит содСрТимоС : ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ @Composable ColumnScope.() -> Unit , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ любой составной ΠΊΠΎΠ΄ Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ DropdownMenuItem , Π½ΠΎ ΠΈ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ элСмСнтами.

 Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню(...) {
    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (...)
    Π”Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ()
    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (...)
}
 

Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ этому, составная функция DropdownMenuItem ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ: Boolean = true , ΠΈ это позволяСт Π½Π°ΠΌ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ элСмСнты.

πŸ’‘

ПолоТСниС DropDownMenu зависит ΠΎΡ‚ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π°.

Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ DropDownMenu , ΠΊΠΎΠ³Π΄Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΌΠ°ΠΊΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ выравнивания .

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ настройкС DropDownMenuItem ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π³Π»Π°Π²Π΅.

⚠️

ExposedDropdownMenuBox 9БоставляСмая функция 0011 являСтся ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ.

ExposedDropdownMenuBox позволяСт Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ мСню с TextField , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ элСмСнт.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ExposedDropdownMenuBox со списком ΠΊΠΎΡ„Π΅ΠΉΠ½Ρ‹Ρ… Π½Π°ΠΏΠΈΡ‚ΠΊΠΎΠ².

 @Боставной
вСсСло Demo_ExposedDropdownMenuBox() {
    val контСкст = LocalContext.current
    val coffeeDrinks = arrayOf("АмСрикано", "ΠšΠ°ΠΏΡƒΡ‡ΠΈΠ½ΠΎ", "ЭспрСссо", "Π›Π°Ρ‚Ρ‚Π΅", "Мокко")
    var Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ { mutableStateOf(false) }
    var selectedText ΠΏΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ { mutableStateOf (coffeeDrinks [0]) }
    ΠšΠΎΡ€ΠΎΠ±ΠΊΠ°(
        ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
            . fillMaxWidth ()
            .padding(32.dp)
    ) {
        ExposedDropdownMenuBox(
            Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
            onExpandedChange = {
                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = !Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ
            }
        ) {
            ВСкстовоС ΠΏΠΎΠ»Π΅(
                Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ тСкст,
                onValueChange = {},
                Волько для чтСния = Π˜ΡΡ‚ΠΈΠ½Π°,
                trailingIcon = {ExposedDropdownMenuDefaults.TrailingIcon(Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ)},
                ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.menuAnchor()
            )
            ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню (
                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
                onDismissRequest = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = лоТь}
            ) {
                coffeeDrinks.forEach { ΠΏΡƒΠ½ΠΊΡ‚ ->
                    Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                        тСкст = {ВСкст (тСкст = элСмСнт)},
                        ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                            Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ тСкст = элСмСнт
                            Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                            Toast. makeText(контСкст, элСмСнт, Toast.LENGTH_SHORT).show()
                        }
                    )
                }
            }
        }
    }
}
 

πŸ’‘

ВСкстовоС ΠΏΠΎΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Modifier.menuAnchor() , начиная с Β«material3:1.0.0-beta03Β».

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ TextField являСтся Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ, Π½ΠΎ Π² нашСм случаС ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π΅Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΠΏΠΎΠ»Π΅. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ поиска, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅.

ExposedDropdownMenuBox ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ Π·Π½Π°Ρ‡ΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ( ExposedDropdownMenuDefaults.TrailingIcon(Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ) ). Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ использовали Π΅Π³ΠΎ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ свойства trailingIcon .

Каскадная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ мСню. Он прСдоставляСт ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΊΠ°ΠΊ для Jetpack Compose, Ρ‚Π°ΠΊ ΠΈ для View.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ шаг β€” Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ зависимости.

 зависимости {
    ...
    // Π’ΠΈΠ΄
    рСализация "me.saket.cascade:cascade:2.0.0-rc01"
    // БоставлСниС Ρ€Π΅Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Ρ€Π°Π½Ρ†Π°
    рСализация "me.saket.cascade:cascade-compose:2.0.0-rc01"
}
 

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом являСтся созданиС Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ CascadeDropdownMenu , Ρƒ нас Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ структура:

Когда ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ CascadeDropdownMenu , ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ составныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DropdownMenuItem :

  • Drop downMenuItem ΠΈΠ· "каскадной" Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ влоТСнности.
  • DropdownMenuItem ΠΈΠ· Β«ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° 3Β» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π½Π΅Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… элСмСнтов.
 @Боставной
вСсСло Demo_CascadeDropdownMenu() {
    val контСкст = LocalContext.current
    var Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ { mutableStateOf(false) }
    Π‘Ρ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ лСса(
        вСрхняя панСль = {
            TopAppBar(
                Π½Π°Π·Π²Π°Π½ΠΈΠ΅ = {},
                дСйствия = {
                    IconButton(onClick = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = !Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ}) {
                        Икона(
                            Π²Π΅ΠΊΡ‚ΠΎΡ€ изобраТСния = Icons. Default.MoreVert,
                            contentDescription = "Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСню"
                        )
                    }
                }
            )
        }
    ) { значСния заполнСния ->
        ΠšΠΎΡ€ΠΎΠ±ΠΊΠ°(
            ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
                .fillMaxWidth ()
                .padding(paddingValues)
                .wrapContentSize(Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅.Π’Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ†)
        ) {
            КаскадноС Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню (
                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
                onDismissRequest = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = лоТь}
            ) {
                Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                    тСкст = { ВСкст (тСкст = "1. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚") },
                    Π΄Π΅Ρ‚ΠΈ = {
                        Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                            text = { Text(text = "1.1. ΠŸΠΎΠ΄ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚") },
                            ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                                Toast.makeText(context, "1.1. ΠŸΠΎΠ΄ΠΏΡƒΠ½ΠΊΡ‚", Toast.LENGTH_SHORT). show()
                            }
                        )
                    }
                )
                Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                    тСкст = { ВСкст (тСкст = "2. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚") },
                    Π΄Π΅Ρ‚ΠΈ = {
                        Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                            text = { Text(text = "2.1. ΠŸΠΎΠ΄ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚") },
                            ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                                Toast.makeText(context, "2.1. ΠŸΠΎΠ΄ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚", Toast.LENGTH_SHORT).show()
                            }
                        )
                        Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                            text = { Text(text = "2.2. ΠŸΠΎΠ΄ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚") },
                            Π΄Π΅Ρ‚ΠΈ = {
                                Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                                    text = { Text(text = "2.2.1. ΠŸΠΎΠ΄ΠΏΡƒΠ½ΠΊΡ‚") },
                                    ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                                        Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                                        Toast. makeText(context, "2.2.1. Под-подэлСмСнт", Toast.LENGTH_SHORT).show()
                                    }
                                )
                            }
                        )
                    }
                )
            }
        }
    }
}
 

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ настройкС DropdownMenuItem ΠΈΠ· «каскадной» Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π³Π»Π°Π²Π΅.

ПослС создания DropdownMenu , ExposedDropdownMenuBox ΠΈ CascadeDropdownMenu ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Π±Π°Π·ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠΌΠΏΠΎΠ½ΡƒΠ΅ΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ β€” DropdownMenuItem .

DropdownMenuItem β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· основных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ мСню Π² Jetpack Compose. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π², ΠΊΠ°ΠΊΠΎΠΉ элСмСнт Π²Ρ‹Π±Ρ€Π°Π½ ΠΏΡ€ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΈ ExposedDropdownMenuBox .

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΎΠ±Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ
DropdownMenuItem ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Β«ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» 3Β» ΠΈΠΌΠ΅Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² настройки, Ρ‡Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Β«ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Β».

contentPadding позволяСт Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ элСмСнта ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ отступ, Ρ€Π°Π²Π½Ρ‹ΠΉ 12.dp .

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ Π·Π½Π°Ρ‡ΠΊΠΈ для элСмСнта, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ leadingIcon ΠΈ trailingIcon свойства.

 Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ мСню(
    ...
    Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡ΠΎΠΊ = {
        Икона(
            Π²Π΅ΠΊΡ‚ΠΎΡ€ изобраТСния = Иконки.По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅,
            содСрТаниС ОписаниС = ...
        )
    },
    Ρ‚Ρ€Π΅ΠΉΠ»ΠΈΠ½Π³Π˜ΠΊΠΎΠ½ = {
        Икона(
            Π²Π΅ΠΊΡ‚ΠΎΡ€ изобраТСния = Icons.Default.MoreVert,
            содСрТаниС ОписаниС = ...
        )
    }
)
 

Бвойство colors: MenuItemColors Π·Π°Π΄Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚Π° для тСкста ΠΈ Π·Π½Π°Ρ‡ΠΊΠΎΠ² Π²ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состояниях.

 @НСизмСняСмый
Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ конструктор класса MenuItemColors(
    частный val textColor: Π¦Π²Π΅Ρ‚,
    частный Π²Π°Π» Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉIconColor: Π¦Π²Π΅Ρ‚,
    частный val trailingIconColor: Ρ†Π²Π΅Ρ‚,
    частный val disabledTextColor: Ρ†Π²Π΅Ρ‚,
    private val disabledLeadingIconColor: Color,
    private val disabledTrailingIconColor: Color,
) {. ..}
 

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡ‚ΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ элСмСнт Π²Π½ΡƒΡ‚Ρ€ΠΈ ExposedDropdownMenu , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΡƒΠΆΠ΅ Π²Ρ‹Π±Ρ€Π°Π½. Для дСмонстрации я Π±ΡƒΠ΄Ρƒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ FontWeight.Bold для Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ элСмСнта.

 @Боставной
вСсСло Demo_ExposedDropdownMenuBox_SelectionStyling() {
    val контСкст = LocalContext.current
    val coffeeDrinks = arrayOf("АмСрикано", "ΠšΠ°ΠΏΡƒΡ‡ΠΈΠ½ΠΎ", "ЭспрСссо", "Π›Π°Ρ‚Ρ‚Π΅", "Мокко")
    var Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ { mutableStateOf(false) }
    var selectedItemIndex, ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ { mutableStateOf (0) }
    ExposedDropdownMenuBox(
        Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
        onExpandedChange = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = !Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ},
        ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = Modifier.padding(16.dp),
    ) {
        ВСкстовоС ΠΏΠΎΠ»Π΅(
            Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = coffeeDrinks[selectedItemIndex],
            onValueChange = {},
            Волько для чтСния = Π˜ΡΡ‚ΠΈΠ½Π°,
            trailingIcon = {ExposedDropdownMenuDefaults.TrailingIcon(Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ)},
            ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€. menuAnchor()
        )
        ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню (
            Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
            onDismissRequest = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = лоТь}
        ) {
            coffeeDrinks.forEachIndexed { индСкс, элСмСнт ->
                Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                    тСкст = {
                        ВСкст(
                            тСкст = элСмСнт,
                            fontWeight = if (index == selectedItemIndex) FontWeight.Bold ΠΈΠ½Π°Ρ‡Π΅ null
                        )
                    },
                    ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                        Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉItemIndex = индСкс
                        Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                        Toast.makeText(контСкст, элСмСнт, Toast.LENGTH_SHORT).show()
                    }
                )
            }
        }
    }
}
 

DropdownMenu ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° свойства настройки:

  • смСщСниС: DpOffset
  • свойства: PopupProperties

ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΊΠ½Π° DropdownMenu Π½Π° экранС, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство смСщСния .

 Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню(
    Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
    onDismissRequest = {Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = лоТь},
    смСщСниС = DpOffset (x = 20.dp, y = 40.dp)
) {
    ...
}
 

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ стандартноС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ DropdownMenu , ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² свойства: ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ PopupProperties . Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ класса PopupProperties .

 @НСизмСнный
конструктор класса PopupProperties @ExperimentalComposeUiApi(
    val фокусируСмоС: Boolean = false,
    val ΡƒΠ²ΠΎΠ»ΡŒΠ½Π΅Π½ΠΈΠ΅OnBackPress: Boolean = истина,
    val ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΠΈΡ‚ΡŒOnClickOutside: Boolean = true,
    val securePolicy: SecureFlagPolicy = SecureFlagPolicy.Inherit,
    val excludeFromSystemGesture: Boolean = true,
    val clippingEnabled: Boolean = true,
    val usePlatformDefaultWidth: Boolean = false
)
 

Когда ΠΌΡ‹ создаСм Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Cascade, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ DropdownMenuItem , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ отличаСтся ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° с ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Β«ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» 3Β».

contentPadding позволяСт Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ элСмСнта ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΠ½ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ для 12.dp .

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для элСмСнта ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚Π°ΠΊ ΠΈ Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠΉ Π·Π½Π°Ρ‡ΠΊΠΈ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойства leadingIcon ΠΈ trailingIcon .

Бвойство colors: MenuItemColors Π·Π°Π΄Π°Π΅Ρ‚ Ρ†Π²Π΅Ρ‚Π° для тСкста ΠΈ Π·Π½Π°Ρ‡ΠΊΠΎΠ² Π²ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состояниях.

 @НСизмСнный
Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ конструктор класса MenuItemColors(
    частный val textColor: Π¦Π²Π΅Ρ‚,
    частный Π²Π°Π» Π²Π΅Π΄ΡƒΡ‰ΠΈΠΉIconColor: Π¦Π²Π΅Ρ‚,
    частный val trailingIconColor: Ρ†Π²Π΅Ρ‚,
    частный val disabledTextColor: Ρ†Π²Π΅Ρ‚,
    private val disabledLeadingIconColor: Color,
    private val disabledTrailingIconColor: Color,
) {...}
 

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ для Π΄Π΅Ρ‚Π΅ΠΉ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π΅Ρ‚Π΅ΠΉ Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ свойство.

РСализация Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ поиска ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню.

Π•ΡΡ‚ΡŒ нСсколько ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΉ:

  1. TextField Π²Π½ΡƒΡ‚Ρ€ΠΈ ExposedDropdownMenuBox Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ, поэтому ΠΌΡ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ readOnly = true .
  2. onDismissRequest Π² ExposedDropdownMenu Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ пустым. ΠœΡ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ мСню, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚/удаляСт любой символ.
  3. Для простоты Π»ΠΎΠ³ΠΈΠΊΠ° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ составной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ, вынСсти Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ мСсто, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² ViewModel .
 @Боставной
вСсСло Demo_SearchableExposedDropdownMenuBox() {
    val контСкст = LocalContext.current
    val coffeeDrinks = arrayOf("АмСрикано", "ΠšΠ°ΠΏΡƒΡ‡ΠΈΠ½ΠΎ", "ЭспрСссо", "Π›Π°Ρ‚Ρ‚Π΅", "Мокко")
    var Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ { mutableStateOf(false) }
    var selectedText ΠΏΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ { mutableStateOf ("") }
    ΠšΠΎΡ€ΠΎΠ±ΠΊΠ°(
        ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
            .fillMaxWidth ()
            .padding(32.dp)
    ) {
        ExposedDropdownMenuBox(
            Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
            onExpandedChange = {
                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = !Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ
            }
        ) {
            ВСкстовоС ΠΏΠΎΠ»Π΅(
                Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ тСкст,
                onValueChange = { selectedText = ΠΎΠ½ΠΎ },
                label = { Text(text = "НачнитС Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ„Π΅") },
                trailingIcon = {ExposedDropdownMenuDefaults. TrailingIcon(Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ)},
                ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ = ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€.menuAnchor()
            )
            val filteredOptions =
                coffeeDrinks.filter { it.contains (selectedText, ignoreCase = true)}
            Ссли (filteredOptions.isNotEmpty()) {
                ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню (
                    Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ,
                    onDismissRequest = {
                        // ΠœΡ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ мСню, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚/удаляСт любой символ
                    }
                ) {
                    filteredOptions.forEach {элСмСнт ->
                        Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню (
                            тСкст = {ВСкст (тСкст = элСмСнт)},
                            ΠΏΠΎ ΠΊΠ»ΠΈΠΊΡƒ = {
                                Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ тСкст = элСмСнт
                                Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹ΠΉ = Π»ΠΎΠΆΠ½Ρ‹ΠΉ
                                Toast.makeText(контСкст, элСмСнт, Toast.LENGTH_SHORT).show()
                            }
                        )
                    }
                }
            }
        }
    }
}
 

ΠœΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ мСню. Π”Π°Π²Π°ΠΉΡ‚Π΅ взглянСм Π½Π° тСстированиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса этих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ².

ΠœΡ‹ рассмотрим, ΠΊΠ°ΠΊ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ экран Β«Π•Π΄ΠΈΠ½ΠΈΡ†Ρ‹Β». Π’ основном это Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ нСсколько тСстовых ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для дСмонстрационных Ρ†Π΅Π»Π΅ΠΉ, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΈΡ… Π² Ρ€Π°Π·Π½Ρ‹Ρ… частях прилоТСния.

Для простоты я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ТСстко Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ строки вмСсто рСсурсов Π² тСстах ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, Π½ΠΎ я Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ строковыС рСсурсы ( R.string.moreMenu_contentDescription ). ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± использовании тСстов строковых рСсурсов ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ строковых рСсурсов Π² тСстах Jetpack ComposeΒ».

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π΄Π΅Ρ€Π΅Π²Π° ΡƒΠ·Π»ΠΎΠ²

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΠΎ ΡƒΠ·Π»ΠΎΠ² Π½Π° экранС, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ нСсколько ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ²:

  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ инструмСнт Β«Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ²Β»
  • РаспСчатайтС Π΄Π΅Ρ€Π΅Π²ΠΎ ΡƒΠ·Π»ΠΎΠ² Π² ΠΆΡƒΡ€Π½Π°Π»Π°Ρ….

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ инспСктор ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Β«Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ > Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈΒ», ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ Π½Π° устройствС ΠΈΠ»ΠΈ Π² эмуляторС.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΠΎ ΡƒΠ·Π»ΠΎΠ² Π² Π»ΠΎΠ³Π°Ρ…, Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄. Π•Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² тСсты ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса.

 // ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ объСдинСнного Π΄Π΅Ρ€Π΅Π²Π° ΡƒΠ·Π»ΠΎΠ² со всСми ΡƒΠ·Π»Π°ΠΌΠΈ
// Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ для ΠΏΠ΅Ρ‡Π°Ρ‚ΠΈ объСдинСнного ΠΈΠ»ΠΈ нСслитного Π΄Π΅Ρ€Π΅Π²Π°
onRoot (useUnmergedTree = false)
    .printToLog("ΠžΠ‘ΠͺΠ•Π”Π˜ΠΠ•ΠΠž")
// ΠŸΠ΅Ρ‡Π°Ρ‚ΡŒ ΡƒΠ·Π»Π° для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡƒΠ·Π»Π°
Π½Π° ΡƒΠ·Π»Π΅ (keyIsDefined (SemanticsProperties.IsPopup))
    .printToLog ("Π’ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ")
 

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ DropDownMenu , Π½Π°ΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с экрана Β«Π•Π΄ΠΈΠ½ΠΈΡ†Ρ‹Β».

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ случаи:

  1. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΒ».
  2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ доступныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.
  3. ВзаимодСйствиС с опциями.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ с описаниСм содСрТимого Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСню», ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

 onNodeWithContentDescription (Β«Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСню»)
        .performClick()
 

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° отобраТСния ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°:

 onNode(hasText("Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ"))
    . assertIsDisplayed()
 

Однако Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ситуация, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅. Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ, Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΊΡƒ с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ: SemanticsProperties.IsPopup . Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ тСкст Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π°:

 onNode(hasText("Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ").and(hasAnyAncestor(keyIsDefined(SemanticsProperties.IsPopup))))
    .assertIsDisplayed()
 

DropdownMenu ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ элСмСнты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ элСмСнт ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ assertIsNotEnabled() , ΠΈ Ссли ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ элСмСнт Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ assertIsEnabled() .

 onNode(hasText("Load").and(hasAnyAncestor(keyIsDefined(SemanticsProperties.IsPopup))))
    .assertIsNotEnabled()
 
Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π½Π°Π·Π°Π΄Β». Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Espresso, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Espresso. back() .

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ExposedDropdownMenuBox Π² тСстах ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ описаниС содСрТимого, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ описаниС содСрТимого Β«Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню».

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ… ΡƒΠ·Π»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β«Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€Π° ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ²Β» ΠΈΠ»ΠΈ распСчатав Π΄Π΅Ρ€Π΅Π²ΠΎ ΡƒΠ·Π»ΠΎΠ² Π² ΠΆΡƒΡ€Π½Π°Π»Π°Ρ….

Π£ нас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ExposedDropdownMenuBox с доступным Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния ΠΈΠ»ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ TextField .

Π§Ρ‚ΠΎΠ±Ρ‹ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ExposedDropdownMenuBox , ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню:

 onNodeWithContentDescription("Dropdown menu")
    .performClick()
 

Если Ρƒ нас Π½Π° экранС нСсколько ExposedDropdownMenuBox , ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ ΠΈΡ… всС ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ ΠΏΠΎ индСксу:

 onAllNodes(hasContentDescription("Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню"))[0]
    .performClick()
 

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΉΡ‚ΠΈ ExposedDropdownMenuBox с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΌ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ элСмСнтом:

 onNode(hasText("ЦСльсий (°C)"))
    . performClick()
 

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ExposedDropdownMenuBox с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ поиска, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ввСсти ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ тСкст Π² TextField :

 onNode(hasText("Speed"))
    .performTextInput("ΠšΠΈΠ»ΠΎΠΌΠ΅Ρ‚Ρ€")
 

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° наличия Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΎΠΏΡ†ΠΈΠΈ:

 onNode(hasText("ΠšΠΈΠ»ΠΎΠΌΠ΅Ρ‚Ρ€/час").and(hasAnyAncestor(keyIsDefined(SemanticsProperties.IsPopup))))
    .assertIsDisplayed()
 
Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π½Π°Π·Π°Π΄Β». Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Espresso, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Espresso.back() .

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ CascadeDropdownMenu , Π½Π°ΠΌ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ.

Рассмотрим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ случаи:

  1. Π©Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ Β«Π’Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ мСню».
  2. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ доступныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.
  3. ВзаимодСйствиС с опциями.

Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΎΠΊ с описаниСм содСрТимого «Π’Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ мСню», ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

 onNodeWithContentDescription("Π’Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ мСню")
        . performClick()
 

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ шагом являСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ отобраТаСтся Π²ΠΎ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΎΠΊΠ½Π΅:

 onNode(hasText("1. Item").and(hasAnyAncestor(keyIsDefined(SemanticsProperties.IsPopup))))
    .assertIsDisplayed()
 

Для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΌΡƒ мСню ΠΌΡ‹ Π½Π°ΠΆΠΌΠ΅ΠΌ Π½Π° ΡƒΠ·Π΅Π» с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ тСкстом.

 onNode(hasText("1. Item").and(hasAnyAncestor(keyIsDefined(SemanticsProperties.IsPopup))))
    .performClick()
 
Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π½Π°Π·Π°Π΄Β». Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Espresso, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Espresso.back() .

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Β«ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» 3Β» доступно нСсколько Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… мСню:

  • DropdownMenu прСдставляСт собой Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ с ΠΏΡƒΠ½ΠΊΡ‚Π°ΠΌΠΈ мСню.
  • ExposedDropdownMenuBox прСдставляСт Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ΅ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню, доступноС Π² каскадной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅.

Когда ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ эти ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π² тСстах ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ описаниС содСрТимого ΠΈ тСкстовыС значСния. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π½Π°Π·Π°Π΄Β», ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Espresso.back() , Ссли ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Espresso.

Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список β€” БистСма ΡƒΠ³Π»Π΅Ρ€ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π°

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΈΠ»ΠΈ нСсколько. Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊ дСйствиС для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ сортировки ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°.

БущСствуСт Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ…ΡΡ списков, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности β€” Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список, мноТСствСнный Π²Ρ‹Π±ΠΎΡ€ ΠΈ ΠΏΠΎΠ»Π΅ со списком.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ НазначСниС
Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΈΠ· списка.
ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈΠ· списка ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ.
ПолС со списком ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΈΠ· списка ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Ρ…, вСроятных ΠΈΠ»ΠΈ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

  • Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… Π½Π° ΠΏΠΎΠ»Π½Ρ‹Ρ… страницах, Π² ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΊΠ½Π°Ρ… ΠΈΠ»ΠΈ Π½Π° Π±ΠΎΠΊΠΎΠ²Ρ‹Ρ… панСлях. Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ сортировки содСрТимого Π½Π° страницС. Π­Ρ‚ΠΎ стилизованная вСрсия Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости.
  • НС рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список, Ссли Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π²Ρ‹Π±ΠΎΡ€Π°. ΠΎΡ‚. Π’ этом случаС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ вмСсто этого Π³Ρ€ΡƒΠΏΠΏΠ°.
  • НС вставляйтС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΈΡ… для отобраТСния слишком слоТной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π”Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² максимально прост.
  • РассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅, Ссли Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ вашСго ΠΎΠΏΡ‹Ρ‚Π° основано Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈΠ»ΠΈ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…. Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ Π»Π΅Π³Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° мобильной ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅
Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ Ρ‚Π΅ΠΌ

Π‘Π΅Π»Π΅ΠΊΡ‚ΠΎΡ€ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°

Π–ΠΈΠ²ΠΎΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

 

<Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список

ariaLabel="Dropdown"

id="carbon-dropdown-example"

items={items}

label="ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню"

titleText="Dropdown title"

/>

9000 4

Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹

Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹

Ρ€Π°Π·ΠΌΠ΅Ρ€

sm

md

lg

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠ΅ списки состоят ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² β€” Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСкста, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст, ΠΏΠΎΠ»Π΅, мСню ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, содСрТащиСся Π² мСню. Π­Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΊΠΈ ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ обоснованноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ принятии Π²Ρ‹Π±ΠΎΡ€.

  1. Π―Ρ€Π»Ρ‹ΠΊΠΈ: ВСкст, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Π΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.
  2. Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст: Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€.
  3. ПолС: БохраняСтся ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка.
  4. ΠžΠΏΡ†ΠΈΡ: Π’Ρ‹Π±ΠΎΡ€ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°ΠΌΠΈ Π² мСню.
  5. МСню: Бписок ΠΎΠΏΡ†ΠΈΠΉ Π½Π° Π²Ρ‹Π±ΠΎΡ€, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ состоянии. ΠΎΡ‚.

БущСствуСт Π΄Π²Π° стиля Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ Π²Π²ΠΎΠ΄Π°: ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΉ. Они Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Π½ΠΎ выглядят Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, влияя Π½Π° Ρ‚ΠΎ, Π³Π΄Π΅ ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π‘Ρ‚ΠΈΠ»ΡŒ Π’Π½Π΅ΡˆΠ½ΠΈΠΉ Π²ΠΈΠ΄ Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ использования
По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ, Π³Π΄Π΅ ΠΌΠ΅Ρ‚ΠΊΠ° располоТСн снаруТи ΠΈ Π½Π°Π΄ ΠΏΠΎΠ»Π΅ΠΌ Π²Π²ΠΎΠ΄Π°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° трСбуСтся пустоС пространство ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΠ³Π΄Π° пространство Π² Π΄Π΅Ρ„ΠΈΡ†ΠΈΡ‚Π΅ ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹.
Fluid ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΠ΅Ρ‚ΠΊΠ° размСщаСтся Π²Π½ΡƒΡ‚Ρ€ΠΈ поля Π²Π²ΠΎΠ΄Π° ΠΈ располагаСтся Π½Π° ΠΎΠ΄Π½ΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ с тСкстом, Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π² Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Ρ…, ΠΏΠ»Π°Π²Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹Ρ… пространствах ΠΈΠ»ΠΈ прикрСпляйтС ΠΊ слоТным ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ панСль инструмСнтов.

Π’Π²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ отобраТаСтся слСва, Π° ΠΏΠ»Π°Π²Π½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ β€” справа.

Высота Π²Π²ΠΎΠ΄Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ

БущСствуСт Ρ‚Ρ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° высоты Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ: малСнький, срСдний ΠΈ большой. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚Ρ€Π΅Ρ… Ρ€Π°Π·Π½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ большС гибкости ΠΏΡ€ΠΈ структурированиС ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ². Однако ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ для всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° Ρ‚Π° ΠΆΠ΅ страница. НапримСр, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список срСднСго Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Π²ΠΎΠ΄ тСкста ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Ρ‚. Π΄. Если Π²Ρ‹ ΡΠΎΠΌΠ½Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ срСду ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€ высота.

905 02 32 / 2
Π Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Высота (пкс/бэр) Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ использования
МалСнький (см) Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠΌ пространствС ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Π² Ρ„ΠΎΡ€ΠΌΠ΅. это Π΄ΠΎΠ»Π³ΠΎ ΠΈ слоТно.
Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ (md) 40 / 2,5 Π­Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€. Если Π²Ρ‹ ΡΠΎΠΌΠ½Π΅Π²Π°Π΅Ρ‚Π΅ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ срСдний Ρ€Π°Π·ΠΌΠ΅Ρ€.
Π‘ΠΎΠ»ΡŒΡˆΠΎΠΉ (lg) 48 / 3 Π’Ρ‹Π±ΠΈΡ€Π°ΠΉΡ‚Π΅ этот Ρ€Π°Π·ΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° Π΅ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ мСста для Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² простых Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список размСщаСтся Π½Π° страницС сам ΠΏΠΎ сСбС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² качСствС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°.

Когда мСню ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ, каТдая опция Π² мСню Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚Ρƒ ΠΆΠ΅ высоту, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΠΎΠ»Π΅.

Высоты Π²Π²ΠΎΠ΄Π° Тидкости

Π’ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС Тидкости Π΅ΡΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° высота Π²Π²ΠΎΠ΄Π°, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π²Π° мСню Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ элСмСнтов β€” ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ сТатыС.

Π Π°Π·ΠΌΠ΅Ρ€ Тидкости Высота (пкс/бэр) Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ использования
По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 64 / 4 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ мСньшС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² мСню Π² Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹.
Π‘ΠΆΠ°Ρ‚Ρ‹ΠΉ 40 / 2,5 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° имССтся ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² мСню, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ большС сразу Π±Π΅Π· ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ.

Π¨ΠΈΡ€ΠΈΠ½Π°

Для Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Π½Π΅Ρ‚ минимальной ΠΈΠ»ΠΈ максимальной ΡˆΠΈΡ€ΠΈΠ½Ρ‹. Π¨ΠΈΡ€ΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ настроСна соотвСтствСнно своСму контСксту.

ΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΏΠΎΠ»Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹Ρ€ΠΎΠ²Π½Π΅Π½Ρ‹ ΠΏΠΎ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° страницС. ВыравниваСтся Π»ΠΈ ΠΎΠ½ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ со столбцами сСтки ΠΈΠ»ΠΈ висит Π² ΠΏΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ°Ρ…, зависит ΠΎΡ‚ ΡΡ‚ΠΈΠ»ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅.

ВыровняйтС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ стиля ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ с сСткой, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠ΅Ρ‚ΠΊΠ° Π²Π²ΠΎΠ΄Π° совпадала с Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ Π½Π° страницС.

НС Π²Π΅ΡˆΠ°ΠΉΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки стиля ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² ΠΆΠ΅Π»ΠΎΠ±Π° сСтки.

УстанавливайтС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Тидкости Π·Π°ΠΏΠΎΠ΄Π»ΠΈΡ†ΠΎ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π±Π΅Π· ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Тидкости с Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ»ΠΈ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌ расстояниСм ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ элСмСнты

Π―Ρ€Π»Ρ‹ΠΊΠΈ
  • Π―Ρ€Π»Ρ‹ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Π΅Π³ΠΎ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².
  • Π‘Π΄Π΅Π»Π°ΠΉΡ‚Π΅ этикСтку ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ ΠΈ Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½ΠΎΠΉ, ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ² Π΅Π΅ ΠΎΠ΄Π½ΠΎΠΉ строкой тСкста.
Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст
  • Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст β€” это ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ информация, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π² Π²Ρ‹Π±ΠΎΡ€Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€ ΠΈΠ· Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ мСню.
  • Π’ΡΠΏΠΎΠΌΠΎΠ³Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ тСкст всСгда доступСн, ΠΊΠΎΠ³Π΄Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ ΠΏΠΎΠ»Π΅ сфокусировано ΠΈ отобраТаСтся ΠΏΠΎΠ΄ этикСткой.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅ Π±ΡƒΠΊΠ²Ρ‹ Π² стилС ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΠΈΡˆΠΈΡ‚Π΅ тСкст Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΠ»Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ с Π·Π½Π°ΠΊΠΈ прСпинания, Ссли мСсто Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ.
ВСкст заполнитСля поля
  • ВСкст заполнитСля отобраТаСтся Π² ΠΏΠΎΠ»Π΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Ссли Π½Π΅ Π±Ρ‹Π»ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ сдСлано ΠΈΠ· Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½Π° случай, Ссли Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список Π½Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ ярлыка Π½Π°Π΄ Π½ΠΈΠΌ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ‡Π΅Ρ‚ΠΊΠΈΠΉ тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ для Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ Ρ†Π΅Π»ΡŒ.
ΠžΠΏΡ†ΠΈΠΈ Π² мСню
  • ΠšΡ€Π°Ρ‚ΠΊΠΎ ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список Π² ΠΎΠ΄Π½ΠΎΠΉ строкС тСкста.
  • Никогда Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ изобраТСния ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡ΠΊΠΈ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС.
  • Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΎΠΏΡ†ΠΈΠΈ Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎΠΌ порядкС.

ВсС поля Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ, Π° Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½Ρ‹ Ρ‚Π΅Π³Π°ΠΌΠΈ. Для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ см. использованиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹ руководство.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ пСрСполнСния

Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ многострочного тСкста Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС. Если тСкст слишком Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ для ΠΎΠ΄Π½Ρƒ строку, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎΡ‡ΠΈΠ΅ (…) для пСрСполнСния содСрТимого ΠΈ сопроводитС Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ для отобраТСния ΠΏΠΎΠ»Π½ΠΎΠΉ строки тСкста.

Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ см. Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΡŽ.

ПовСдСния, пСрСчислСнныС Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ для всСх Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ, ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°, см. Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π½ΠΈΠΆΠ΅.

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π²Π²Π΅Ρ€Ρ… ΠΈΠ»ΠΈ Π²Π½ΠΈΠ· Π² зависимости ΠΎΡ‚ Π΅Π³ΠΎ полоТСния Π½Π° экранС. Для Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список появляСтся Π²Π½ΠΈΠ·Ρƒ ΠΈ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ ΠΊΡ€Π°ΡŽ интСрфСйс, мСню Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ΡΡ Π²Π²Π΅Ρ€Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π΅Π·ΠΊΠΈ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ наш Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π½ΠΈΠ·.

Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню ΠΈΠΌΠ΅Π΅Ρ‚ ΡΡ‚ΠΈΠ»ΡŒ box-shadow , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ располоТСн Π·Π° мСню ΠΊΠΎΠ³Π΄Π° ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠ΄Π°Ρ‚ΡŒ мСню Π±ΠΎΠ»Π΅Π΅ высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Ρ‡Π΅ΠΌ содСрТаниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ Π½Π΅Π³ΠΎ. Box-shadow Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Π½Π°Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ мСню, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ мСню ΠΈ ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€ΡŒ Π²Ρ‹Π±ΠΎΡ€Π° Π΄Π°Ρ‚Ρ‹. БКББ для box-shadow 0 2px 6px 0 rgba(0,0,0,.2) .

ΠŸΠΎΠ»ΠΎΡΡ‹ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Π½Π΅ всСгда ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹, поэтому ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ 50% послСдних высота ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΎΠΏΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² мСню Π΅ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ. ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ с ΡˆΠ΅ΡΡ‚ΠΎΠΉ ΠΎΠΏΡ†ΠΈΠΈ Π² спискС мСню, Π½ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°Ρ€ΡŒΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² зависимости ΠΎΡ‚ вашСго ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° использования.

Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки, поля со списком ΠΈ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ΅Π»Π΅ΠΊΡ‚ΠΎΡ€Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ ряд состояний ΠΊΠ°ΠΊ для ΠΈΡ… поля ΠΈ мСню: Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ , Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ , фокус , ошибка , ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ , ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ , скСлСт ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния . Для получСния Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΡˆΡ‚Π°Ρ‚Π°Ρ…, ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ состояния руководство Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ стилСй.

ΠœΡ‹ΡˆΡŒ

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π΅ мСню, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ, Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² Π·Π½Π°Ρ‡ΠΎΠΊ ΡˆΠ΅Π²Ρ€ΠΎΠ½Π° ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Π² Π² любом мСстС поля. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ мСню, Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² Π·Π½Π°Ρ‡ΠΎΠΊ ΡˆΠ΅Π²Ρ€ΠΎΠ½Π°. ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Π² Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ мСню.

  • Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π² любом мСстС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².
  • Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈΠ· списка Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС с мноТСствСнным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ , Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ Β«Ρ…Β» рядом со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π³Π°.
  • Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ»Π΅ со списком ΠΈΠ»ΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π—Π½Π°Ρ‡ΠΎΠΊ Β«Ρ…Β» справа ΠΎΡ‚ поля Π²Π²ΠΎΠ΄Π° тСкста.
ΠšΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°
Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список:
  • ПолС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка β€” это элСмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ фокус. Вся ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° взаимодСйствия происходят ΠΈΠ· этого элСмСнта.
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠΏΡ†ΠΈΡŽ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΎΠΏΡ†ΠΈΡŽ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²Π½ΠΈΠ· .
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠΏΡ†ΠΈΡŽ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡƒ Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²Π²Π΅Ρ€Ρ… .
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню, Π½Π°ΠΆΠ°Π² ΠŸΡ€ΠΎΠ±Π΅Π» , Π’Π²ΠΎΠ΄ , Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²Π½ΠΈΠ· ΠΈΠ»ΠΈ Π‘Ρ‚Ρ€Π΅Π»ΠΊΠ° Π²Π²Π΅Ρ€Ρ… .
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню, Π½Π°ΠΆΠ°Π² Escape , ΠŸΡ€ΠΎΠ±Π΅Π» ΠΈΠ»ΠΈ Enter .
ПолС со списком:
  • ΠŸΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ символа фокус остаСтся Π½Π° ΠΏΠΎΠ»Π΅, Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² мСню Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ всСго соотвСтствуСт Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ символу.
  • ΠŸΡ€ΠΈ быстром Π²Π²ΠΎΠ΄Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… символов фокус остаСтся Π½Π° ΠΏΠΎΠ»Π΅ Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ опция Π² мСню Π²Ρ‹Π΄Π΅Π»Π΅Π½Π°, которая Π»ΡƒΡ‡ΡˆΠ΅ всСго соотвСтствуСт строкС Π½Π°Π±Ρ€Π°Π½Ρ‹ символы.
ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹Π±ΠΎΡ€:
  • ПолС мноТСствСнного Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ фокус, Ссли Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π½Π΅ Π²Ρ‹Π±Ρ€Π°Π½ Π² мСню.
  • Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ мСню ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ фокус, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΆΠ°Ρ‚ΡŒ Enter , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΎΠΏΡ†ΠΈΠΈ.
  • ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ΡΡ мСню, наТимая ΠŸΡ€ΠΎΠ±Π΅Π» .

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΈΠ· списка Π·Π° Ρ€Π°Π·.

  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠΉ тСкст Π² ΠΏΠΎΠ»Π΅, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π·Π°ΠΊΡ€Ρ‹Ρ‚.
  • ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ ΠΏΠΎΠ»Π΅ открываСтся мСню ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².
  • Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π² мСню Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΈ тСкст Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° замСняСт тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ Π² ΠΏΠΎΠ»Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ остаСтся Π² качСствС ΠΎΠΏΡ†ΠΈΠΈ Π² мСсто, Ссли мСню ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² ΠΈΠ· списка ΠΈΠ»ΠΈ для Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²Ρ‹Π±ΠΎΡ€Π°
  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠΉ тСкст Π² ΠΏΠΎΠ»Π΅, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π·Π°ΠΊΡ€Ρ‹Ρ‚.
  • ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ ΠΏΠΎΠ»Π΅ открываСтся мСню ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ содСрТит установитС Ρ„Π»Π°ΠΆΠΎΠΊ слСва ΠΎΡ‚ тСкста ΠΎΠΏΡ†ΠΈΠΈ.
  • МСню остаСтся ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ, ΠΏΠΎΠΊΠ° Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. МСню закрываСтся Ρ‰Π΅Π»ΠΊΠ½ΡƒΠ² ΠΏΠΎΠ»Π΅ ΠΈΠ»ΠΈ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка.
  • ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠΏΡ†ΠΈΠΉ Π² мСню слСва ΠΎΡ‚ тСкст Π² ΠΏΠΎΠ»Π΅, содСрТащий ΠΎΠ±Ρ‰Π΅Π΅ количСство Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ. тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ Π½Π° тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ.
  • Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ мСню Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌ порядкС.
  • Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка ΠΈ поля со списком, мСню Π½Π΅ закрываСтся, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄Π΅Π»Π°Π΅Ρ‚ Π²Ρ‹Π±ΠΎΡ€. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ мноТСствСнный Π²Ρ‹Π±ΠΎΡ€, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π²Π½Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка ΠΈΠ»ΠΈ Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ элСмСнтС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ мСню.
ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ всС

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈΠ· списка, Π½Π°Π²Π΅Π΄ΠΈΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΌΡ‹ΡˆΠΈ Π½Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚Π΅Π³ ΠΈ Ρ‰Π΅Π»ΠΊΠ½ΠΈΡ‚Π΅ Π·Π½Π°Ρ‡ΠΎΠΊ Β«xΒ» (ΠΈΠ»ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ) рядом со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠΎΡ‡ΡŒ с ΡΡΠ½ΠΎΡΡ‚ΡŒΡŽ, Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π°Ρ подсказка Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° появляСтся, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²ΠΎΠ΄ΠΈΡ‚ курсор Π½Π° Π·Π½Π°Ρ‡ΠΎΠΊ Β«xΒ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ дСйствия. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это сняв Ρ„Π»Π°ΠΆΠΎΠΊ Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡƒΠ·ΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ список ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Π½Π°ΠΉΡ‚ΠΈ Π½ΡƒΠΆΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚. Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ.

  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС с мноТСствСнным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ отобраТаСтся тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ Π² ΠΏΠΎΠ»Π΅ ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ.
  • ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΏΠΎΠ»Π΅ появляСтся тСкстовый курсор.
  • МСню открываСтся, Ссли Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π² любом мСстС поля, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ список Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ вашСй записи, ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π² спискС, Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹.
  • ПослС Π²Π²ΠΎΠ΄Π° тСкста Π² ΠΏΠΎΠ»Π΅ справа ΠΎΡ‚ поля появляСтся Π·Π½Π°Ρ‡ΠΎΠΊ закрытия (x). тСкст Π² ΠΏΠΎΠ»Π΅. Π­Ρ‚ΠΎ очистит любой тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π²Π²Π΅Π΄Π΅Π½ Π² ΠΏΠΎΠ»Π΅.
  • ПослС Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠΏΡ†ΠΈΠΉ Π² мСню слСва ΠΎΡ‚ тСкст Π² ΠΏΠΎΠ»Π΅, содСрТащий ΠΎΠ±Ρ‰Π΅Π΅ количСство Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΎΠΏΡ†ΠΈΠΉ. тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ Π½Π° тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ.
  • Π’Ρ‹Π±Ρ€Π°Π½Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ мСню Π² Π°Π»Ρ„Π°Π²ΠΈΡ‚Π½ΠΎ-Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌ порядкС.
  • Подобно Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒΡΡ мСню с мноТСствСнным Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, мСню Π½Π΅ закрываСтся послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄Π΅Π»Π°Π΅Ρ‚ Π²Ρ‹Π±ΠΎΡ€.

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ ΠΈΠ· ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ списка ΠΎΠΏΡ†ΠΈΠΉ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ большого количСства Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π½Π° Π²Ρ‹Π±ΠΎΡ€.

  • По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠΎΠ»Π΅ со списком ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠΉ тСкст Π² ΠΏΠΎΠ»Π΅, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ.
  • ΠŸΡ€ΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΏΠΎΠ»Π΅ появляСтся тСкстовый курсор.
  • МСню открываСтся, Ссли Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π² любом мСстС поля, ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ список Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ². Π’Π°Ρ€ΠΈΠ°Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ всСго соотвСтствуСт Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΌΡƒ символы Π²Ρ‹Π΄Π΅Π»Π΅Π½Ρ‹.
  • ПослС Π²Π²ΠΎΠ΄Π° тСкста Π² ΠΏΠΎΠ»Π΅ справа ΠΎΡ‚ поля появляСтся Π·Π½Π°Ρ‡ΠΎΠΊ закрытия (x). тСкст Π² ΠΏΠΎΠ»Π΅. Π­Ρ‚ΠΎ очистит любой тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» Π²Π²Π΅Π΄Π΅Π½ Π² ΠΏΠΎΠ»Π΅.
  • Π’Ρ‹Π±ΠΎΡ€ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ мСню, Π° Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ замСняСт тСкст-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒ.
ВстроСнный

ΠŸΡ€ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΈ Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка вмСстС с Π΄Ρ€ΡƒΠ³ΠΈΠΌ содСрТимым ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ inline. Если Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΊ встроСнному Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒΡΡ списку Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ слСва Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка. Если Π½Π΅Ρ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ этикСтки, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΌΠ΅Ρ‚ΠΊΡƒ доступности для встроСнного Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка. ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. ВстроСнный β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ для Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ.

Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΈ Π²Ρ‹Π±ΠΎΡ€

ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка ΠΈ Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΠΌΠ΅ΡŽΡ‚ различия Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ стилС.

  • Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠ΄ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½ Π² соотвСтствии с Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ систСма, Π° внСшний Π²ΠΈΠ΄ Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° опрСдСляСтся Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π±ΠΎΡ€Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π½Π° страницС. Π’Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ список Π²Ρ‹Π±ΠΎΡ€Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ функция мноТСствСнного Π²Ρ‹Π±ΠΎΡ€Π°.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²Ρ‹Π±ΠΎΡ€Π° Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ списка, Ссли большая Ρ‡Π°ΡΡ‚ΡŒ вашСго ΠΎΠΏΡ‹Ρ‚Π° основана Π½Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ…. Π’ этих ситуациях ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ настраиваСмыС Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ΡΡ списки, Π½ΠΎ собствСнный Π²Ρ‹Π±ΠΎΡ€ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠΏΡ€ΠΎΡ‰Π΅ с собствСнной Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ….
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список, Ссли ваш ΠΎΠΏΡ‹Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ. Π’ Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡΡ спискС собствСнного Π²Ρ‹Π±ΠΎΡ€Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ собствСнный элСмСнт управлСния для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Ρ‡Ρ‚ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ использованиС.
Π Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΈ ΠΏΠΎΠ»Π΅ со списком

Π₯отя Ρ€Π°ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉΡΡ список ΠΈ ΠΏΠΎΠ»Π΅ со списком выглядят ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ, Ρƒ Π½ΠΈΡ… Ρ€Π°Π·Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *