Плавающие кнопки Android над представлением
Я пытаюсь иметь плавающую кнопку на моем представлении, я googled и нашел эту ссылку, которая довольно хорошо суммирует ее.
http://www.jondev.net/articles/Floating_Views_in_Android_ (кнопки)
Пока это верно для одной кнопки, но что, если я хочу иметь две плавающие кнопки один в "верхнем левом" и другой в "нижнем правом".
Я думал о наличии относительного макета, который имеет две кнопки с разнесением гравитации. Будет ли это работать. Я попробовал это и ужасно провалился. Кто-нибудь еще пытался это сделать? Есть ли способ сделать это, если да, пожалуйста, дайте мне знать.
Ответы
Ответ 1
Вы можете добиться этого с помощью 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>
Обратите внимание, что последний добавленный виджет находится сверху.
Ответ 2
Вы можете сделать это с помощью RelativeLayout
, хотя вы также можете достичь этого с помощью FrameLayout
(как в примере в вашей ссылке).
В FrameLayout
Установите правильную силу для кнопок (Gravity.BOTTOM|Gravity.RIGHT
или через XML...), а в RelativeLayout
установите правила reuiqred на кнопки:
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
и др.
Ответ 3
<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>