gpt4 book ai didi

android: 哪种做法更适合使用 CoordinatorLayout

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:09:50 26 4
gpt4 key购买 nike

我是 android Material 设计方面的新手。所以,请多多包涵。我尝试为我的家庭 Activity 实现 FAB,然后实现 snackbar 。自然,它高于我的 FAB。我研究了 CoordinatorLayout,但令我困扰的是,哪个是使用 CoordinatorLayout 的更好做法?

例如,这是我的 Activity 的 xml。

<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>

我看到其他人这样添加 CoordinatorLayout。

<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.support.design.widget.CoordinatorLayout> 吗?作为所有元素的根。完全绕过或删除 <RelativeLayout> .

于是xml就变成了这样

    <android.support.design.widget.CoordinatorLayout
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.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.support.design.widget.CoordinatorLayout>仅针对 FAB,我们将其用于整个 Activity 。由于 CoordinatorLayout 专注于使 subview 协调工作,如果所有元素相互协调工作不是更好吗?这两种方式的优点和缺点是什么?

最佳答案

CoordinatorLayout 相对较新,它解决了 FloatingActionButton 和 NavDrawer 的许多问题。因此,如果您必须拥有 FAB 或 NavDrawer,我肯定会建议您从现在开始使用 CoordinatorLayout 作为您的顶级布局(您的最后一个代码 fragment ),并且在其中您可以使用 RelativeLayout 或 LinearLayout 进行更多优化。

关于android: 哪种做法更适合使用 CoordinatorLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32919120/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com