现在我的列表视图位于我的最后一个按钮的右侧,但我希望它位于我的所有三个按钮下面(它们都位于同一行)。如何在列表下方获取我的列表视图?
这是我的代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal|bottom"
android:orientation="horizontal"
android:background="#000000"
tools:context=".Visualizer"
android:id="@+id/homePage">
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|left"
android:background="@drawable/pic_icon"
android:id="@+id/picButton"
android:layout_gravity="left"/>
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|center"
android:background="@drawable/cancel_that_pic"
android:id="@+id/deletePicButton"
/>
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|right"
android:background="@drawable/visual_blueblue"
android:id="@+id/visIcon"
android:layout_gravity="right"
/>
<ListView
android:id="@+id/song_list"
android:layout_width="fill_parent"
android:layout_height="500dp" >
</ListView>
<Space
android:id="@+id/blank_space"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal" />
</LinearLayout>
答案 0 :(得分:1)
我不知道这个布局是否真的是你想要的,因为一切都是水平的。我会优先将父LinearLayout设置为vertical,然后添加另一个LinearLayout。例如:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal|bottom"
android:orientation="vertical"
android:background="#000000"
tools:context=".Visualizer"
android:id="@+id/homePage">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal|bottom"
android:orientation="horizontal"
android:background="#000000">
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|left"
android:background="@drawable/pic_icon"
android:id="@+id/picButton"
android:layout_gravity="left"/>
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|center"
android:background="@drawable/cancel_that_pic"
android:id="@+id/deletePicButton"/>
<ImageButton
android:layout_width="30dp"
android:layout_height="30dp"
android:gravity="top|right"
android:background="@drawable/visual_blueblue"
android:id="@+id/visIcon"
android:layout_gravity="right"/>
</LinearLayout>
<ListView
android:id="@+id/song_list"
android:layout_width="match_parent"
android:layout_height="500dp" >
</ListView>
<Space
android:id="@+id/blank_space"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal" />
</LinearLayout>
并且,请使用xml属性“match_parent”而不是“fill_parent”。此外,你可能需要在这里做一些更多的东西,在一些小屏幕上它可能会发生,因为你的listView高度从500dp不是一切都可见。
答案 1 :(得分:0)
试试这个,
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/homePage"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal|bottom"
android:background="#000000"
android:orientation="vertical"
tools:context=".Visualizer" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/picButton"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_gravity="left"
android:background="@drawable/ic_launcher"
android:gravity="top|left" />
<ImageButton
android:id="@+id/deletePicButton"
android:layout_width="30dp"
android:layout_height="30dp"
android:background="@drawable/ic_launcher"
android:gravity="top|center" />
<ImageButton
android:id="@+id/visIcon"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_gravity="right"
android:background="@drawable/ic_launcher"
android:gravity="top|right" />
</LinearLayout>
<ListView
android:id="@+id/song_list"
android:layout_width="fill_parent"
android:layout_height="500dp" >
</ListView>
<Space
android:id="@+id/blank_space"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal" />
</LinearLayout>
答案 2 :(得分:0)
尝试使用相对LAyout
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/appColor"
tools:context="SplashActivity">
<LinearLayout
android:id="@+id/buttonLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:orientation="vertical">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_launcher" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_launcher" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/ic_launcher" />
</LinearLayout>
<ListView
android:id="@+id/listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentRight="true"
android:layout_toRightOf="@+id/buttonLayout">
</ListView>
</RelativeLayout>