Подробное объяснение всех состояний в BottomSheetBehavior Android - PullRequest
0 голосов
/ 29 мая 2020

В BottomSheetBehavior около шести различных состояний. Я не получил их должного объяснения.

Как будто я не понимаю разницы между STATE_HIDDEN и STATE_COLLAPSED?

Аналогично, в чем разница между STATE_SETTLING и STATE_DRAGGING?

И какова польза от STATE_HALF_EXPANDED?

Ответы [ 2 ]

1 голос
/ 29 мая 2020

Как указано в этой статье https://androidwave.com/bottom-sheet-behavior-in-android/

Нижний лист в основном имеет 5 состояний -

  1. STATE_COLLAPSED - виден но показывает только его высоту взгляда. Это состояние обычно является «положением покоя» нижнего листа.
  2. STATE_EXPANDED - нижний лист виден и имеет максимальную высоту, при этом он не перетаскивается или не оседает.
  3. STATE_DRAGGING - Пользователь активно перетаскивает нижний лист вверх или вниз.
  4. STATE_SETTLING - устанавливается на заданную высоту c после перетаскивания / смахивания.
  5. STATE_HIDDEN - больше не отображается.

Разница в STATE_HIDDEN and STATE_COLLAPSED заключается в том, что когда BottomSheet находится в STATE_HIDDEN, то он полностью скрыт, т.е. не виден на экране, а когда он находится в STATE_COLLAPSED, тогда видна только высота взгляда.

Когда BottomSheet находится в STATE_SETTLING, тогда он либо расширение, либо сворачивание после перетаскивания или смахивания до указанной c высоты, а STATE_DRAGGING - это состояние, когда пользователь перетаскивает BottomSheet.

STATE_HALF_EXPANDED - это состояние, когда нижний лист находится в полуразвернутом состоянии.

0 голосов
/ 29 мая 2020

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

STATE_HIDDEN - нижний лист больше не отображается на экране

STATE_EXPANDED: виден нижний лист и его максимальная высота, и он не перетаскивается или не устанавливается

STATE_DRAGGING: пользователь активно перетаскивает нижний лист вверх или вниз.

STATE_SETTLING: нижний лист установка на указанную c высоту после жеста перетаскивания / смахивания. Это будет высота взгляда, развернутая высота или 0, если действие пользователя привело к скрытию нижнего листа.

STATE_HALF_EXPANDED: лист наполовину развернут (наполовину виден). (применимо, только если для behavior_fitToContents установлено значение false).

Для получения дополнительной информации вы можете посетить здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...