Я хотел обеспечить анимацию SnackBar
сверху вместо обычного поведения, отображающего SnackBar
снизу. Это легко взломать?
Снэк-бар сверху. Это возможно?
Ответы (4)
Нет, это невозможно. В документации указано, что
Они показывают краткое сообщение в нижней части экрана на мобильных устройствах и внизу слева на больших устройствах. Закусочные отображаются выше всех остальных элементов на экране, и одновременно может отображаться только один.
Вы можете использовать стороннюю библиотеку, например, Crouton.
это возможно. проверьте эту библиотеку, сделанную мной https://github.com/AndreiD/TSnackBar
в основном вы добавляете 2 новые анимации для скольжения сверху и меняете гравитацию макета. Это все :)
Позднее редактирование: происходит ошибка.... . если кто-то хочет потратить некоторое время на его исправление, мы все будем признательны :)
РЕДАКТИРОВАТЬ: Это решение отображает Snackbar сверху, а анимацию — снизу.
Это возможно, по крайней мере, с помощью библиотеки Android Material и небольшой хитрости. Вы можете привязать закусочную к представлению, которое отображается в верхней позиции следующим образом:
On activity_main.xml
:
<!-- rest of the components here -->
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:id="@+id/top_coordinator"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top"/>
On MainActivity.kt
:
val snackbar = Snackbar.make(
findViewById(R.id.top_coordinator),
"Hello World",
Snackbar.LENGTH_INDEFINITE
)
snackbar.show()