如何在同一行上设置按钮以进行线性布局

时间:2015-05-04 07:53:49

标签: android button alignment android-linearlayout

我正在尝试对齐我的按钮,使它们彼此并排排列,但由于某种原因,下一个按钮显示在下面的线性上。我必须使用线性布局。

这就是我得到的:

<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_pic"
    android:id="@+id/deletePicButton"
    android:layout_gravity="center"/>

更新的代码:

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

2 个答案:

答案 0 :(得分:2)

设置线性布局的方向:) 将此行放在线性布局中 设置线性布局的方向很重要

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
 >

答案 1 :(得分:1)

您应该将LinearLayout的方向设置为水平。

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
    <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_pic"
        android:id="@+id/deletePicButton"
        android:layout_gravity="center"/>
</LinearLayout>