Android浮动按钮在视图上

时间:2012-05-11 12:10:45

标签: android android-layout android-view

我试图在我的视图上设置一个浮动按钮,我用Google搜索并发现这个链接很好地总结了它。

http://www.jondev.net/articles/Floating_Views_in_Android_(Buttons)

虽然这对于一个按钮来说是正确的,但是如果我想在“左上角”有一个浮动按钮而在“右下角”有另一个浮动按钮怎么办。

我想到了一个相对布局,它有两个按钮,布局重力不同。这会有用吗我试了一下,然后失败了。有没有其他人试图这样做?有没有办法做到这一点,如果是这样,请告诉我。

3 个答案:

答案 0 :(得分:22)

您可以使用RelativeLayout

实现这一目标
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </ListView>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="15dp"
        android:layout_marginRight="15dp"
        android:text="Button" />
</RelativeLayout>

请注意,最后添加的Widget位于顶部。

答案 1 :(得分:2)

您可以使用RelativeLayout执行此操作,但您也可以使用FrameLayout实现此功能(如链接中的示例所示)。 在FrameLayout设置适当的重力到按钮(Gravity.BOTTOM|Gravity.RIGHT,或通过XML ...),并在RelativeLayout中将reuiqred规则设置为按钮:

android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"

答案 2 :(得分:1)

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <ListView
        android:id="@+id/listView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
    </ListView>
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_marginTop="15dp"
        android:layout_marginLeft="15dp"
        android:text="Button" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginBottom="15dp"
        android:layout_marginRight="15dp"
        android:text="Button" />
</RelativeLayout>