gpt4 book ai didi

android - 我应该使用 LinearLayout 还是 RelativeLayout 让 4 个对象填满屏幕?

转载 作者:行者123 更新时间:2023-11-30 03:00:12 24 4
gpt4 key购买 nike

我正在了解 LinearLayoutRelativeLayout 之间的区别,并且对解决我的特定问题的最佳方法感到困惑。我想让 4 个按钮填满一个屏幕,每个按钮都有一些不同的操作。在 RelativeLayout 出现问题后,this 建议我切换到 LinearLayout所以线程。使用嵌套的 LinearLayoutandroid:weight 值,我得到了一个可以正常工作的解决方案。但是,现在我收到警告:“嵌套权重不利于性能。”我及时在 SO 上查找并找到了 this文章,告诉我切换回 RelativeLayout

正确答案是什么?在 RelativeLayout 中有没有一种让对象填充像这样的区域的好方法?

这是我当前的代码。请原谅多余的东西,不确定要留下什么以及取出什么。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/motherStack"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<LinearLayout
android:id="@+id/rowOne"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_weight="1">


<Button
android:id="@+id/redButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="@string/red_button_text"
android:textColor="@color/RED" />

<Button
android:id="@+id/blueButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="@string/blue_button_text"
android:textColor="@color/BLUE" />
</LinearLayout>

<LinearLayout
android:id="@+id/rowTwo"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_weight="1">
<Button
android:id="@+id/greenButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="@string/green_button_text"
android:textColor="@color/GREEN" />

<Button
android:id="@+id/yellowButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="@string/yellow_button_text"
android:textColor="@color/YELLOW" />
</LinearLayout>

我会张贴图片,但我刚刚加入并且没有声誉。 :(

最佳答案

保持根元素android:orientation垂直,然后相应地为水平

试试这个:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/motherStack"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"

tools:context=".MainActivity" >

<LinearLayout
android:id="@+id/rowOne"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_weight="1">


<Button
android:id="@+id/redButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"/>

<Button
android:id="@+id/blueButton"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"/>
</LinearLayout>
<LinearLayout
android:id="@+id/rowTwo"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_weight="1">
<Button
android:id="@+id/Button3"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"/>
<Button
android:id="@+id/Button4"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"/>
</LinearLayout>
</LinearLayout>

希望这对您有所帮助。

关于android - 我应该使用 LinearLayout 还是 RelativeLayout 让 4 个对象填满屏幕?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22651298/

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