Может кто-нибудь помочь мне понять проблему макета между относительным макетом и макетом координатора. Первоначально я использовал кнопку плавающего действия в относительном макете. Ниже приведен код.
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary_color"></android.support.v7.widget.Toolbar>
<android.support.design.widget.FloatingActionButton
android:id="@+id/searchfab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_marginBottom="20dp"
android:layout_marginRight="20dp"
android:src="@drawable/ic_add_black_24dp"
app:fabSize="normal">
</android.support.design.widget.FloatingActionButton>
</RelativeLayout>
Выход:
Для работы со Snackbar я использовал макет Coordinator в том же коде. Но я получил плавающую панель действий в другом положении.
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary_color"></android.support.v7.widget.Toolbar>
<android.support.design.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.FloatingActionButton
android:id="@+id/searchfab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="20dp"
android:layout_marginRight="20dp"
android:src="@drawable/ic_add_black_24dp"
app:fabSize="normal">
</android.support.design.widget.FloatingActionButton>
</android.support.design.widget.CoordinatorLayout>
</RelativeLayout>
выход:
Во всяком случае, я решил проблему, заменив android:layout_alignParentRight и android:layout_alignParentBottom на android:layoutGravity="right|bottom".
Вопрос в том, почему android:layout_alignParentRight и android:layout_alignParentBottom не работают для макета координатора, хотя его высота и ширина сохраняются как match_parent.
Ценю ваш ответ. Спасибо.