我尝试将两个文本视图修复到右下角并将其保持在列表视图上方。 如果列表视图为空,我希望它固定在右下角,但如果我将一些项添加到列表视图中,则使用此代码,textview将消失。 Layout Image
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/relativeLayout1">
<Button
android:text="Fechar Comanda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnFecharComanda" />
<Button
android:text="Extrato"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnExtrato" />
<Button
android:text="Enviar Cozinha"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnEnviarCozinha" />
<Button
android:text="Anterior"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnAnterior" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout1"
android:weightSum="100">
<ListView
android:id="@+id/sportsList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/primeira"
android:layout_weight="33" />
<ListView
android:id="@+id/sportsList_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/segunda"
android:layout_weight="34" />
<LinearLayout
android:orientation="vertical"
android:layout_weight="33"
android:id="@+id/linearLay123123"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="100">
<ListView
android:id="@+id/sportsList_2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/terceira" />
<LinearLayout
android:orientation="vertical"
android:id="@+id/odkjfs"
android:layout_width="match_parent"
android:layout_height="100px"
android:gravity="bottom">
<TextView
android:text="Total"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:gravity="end"
android:layout_marginRight="10dp" />
<TextView
android:text="R$15"
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
答案 0 :(得分:0)
因此,您已使用ReleativeLayout
标记了您的问题,这就是问题的解决方案。您需要将linearLay123123
更改为RelativeLayout
并告诉布局系统,您始终需要{right}位于右下角,而odkjfs
ListView
位于其上方:
sportsList_2
你很难记住,所以我建议你改变它们。
但是让我们分解上面的布局。您有一个包含两行的外部布局。底部有三列。你想要改变的是最右边的列,以便在它的底部保留一些东西。
因此,最简单的方法是从<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/relativeLayout1">
<Button
android:text="Fechar Comanda"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnFecharComanda" />
<Button
android:text="Extrato"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnExtrato" />
<Button
android:text="Enviar Cozinha"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnEnviarCozinha" />
<Button
android:text="Anterior"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/btnAnterior" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout1"
android:weightSum="100">
<ListView
android:id="@+id/sportsList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/primeira"
android:layout_weight="33" />
<ListView
android:id="@+id/sportsList_1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:entries="@array/segunda"
android:layout_weight="34" />
<RelativeLayout
android:layout_weight="33"
android:id="@+id/linearLay123123"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/sportsList_2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_above="@+id/odkjfs"
android:entries="@array/terceira" />
<LinearLayout
android:orientation="vertical"
android:id="@+id/odkjfs"
android:layout_width="match_parent"
android:layout_height="100px"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true">
<TextView
android:text="Total"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:gravity="end"
android:layout_marginRight="10dp" />
<TextView
android:text="R$15"
android:textAppearance="?android:attr/textAppearanceMedium"
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
更改为LinearLayout
,因为更容易将视图相对于彼此对齐,如名称所示。
因此,在将其更改为RelativeLayout
后,我们需要告诉RelativeLayout
与顶部对齐。并且它需要将其高度调整为高于下面的内容。
ListView
然后在你想要在右下角的android:layout_alignParentTop="true"
android:layout_above="@+id/odkjfs"
上。我们需要告诉它调整正确,并调整到底部:
LinearLayout
这很简单。