Снэк-бар внутри макета
Можно ли показать сообщение Snackbar внутри макета, например, показать его внутри RelativeLayout вместо того, чтобы показывать его внизу экрана?
Я пытался использовать ссылочное представление для RelativeLayout, но это не работает.
Snackbar.make(relativeLayoutView, snackbarText, Snackbar.LENGTH_LONG).show();
2 ответа
Я не думаю, что вы можете показать закусочную в любом месте на экране, но только в нижней части. По стандартам это должно быть внизу.
Согласно документации,
"Snackbars обеспечивают легкую обратную связь об операции. Они показывают краткое сообщение внизу экрана на мобильном телефоне и внизу слева на больших устройствах".
https://developer.android.com/reference/android/support/design/widget/Snackbar.html
Если вы все еще хотите сделать это, оформить заказ,
Как вы можете настроить Android SnackBar для определенной позиции на экране
Как изменить начальное выравнивание Android Snackbar снизу вверх?
Вы можете сделать это, сделав новый макет CoordinatorLayout
внутри относительной компоновки и установите ширину и высоту CoordinatorLayout
раскладка.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="100dip">
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="16dp"
android:src="@drawable/add"
app:layout_behavior="com.demotest.FloatingActionButtonBehavior" />
</android.support.design.widget.CoordinatorLayout>
</RelativeLayout>