java - 如何在 Android 布局上正确分配 4 个按钮

标签 java android xml layout

我试图将 4 个图像按钮分布到 Android 布局的 4 个可能的屏幕角落(无论分辨率如何)。我希望图像背景是静态的(即 50x50 倾斜),并且我还希望在背景中全屏显示 android.gesture.GestureOverlayView 层。我很难弄清楚这一点,而且我对 droid 开发非常陌生。 使用 eclipse+AVD 2.1.1

非常感谢!!

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#6495ED"
    android:gravity="fill"
    android:launchMode="singleInstance"
    android:orientation="vertical" >

    <!-- ICON -->
    <ImageView
        android:id="@+id/icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <TableLayout
        android:id="@+id/tableLayout2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0"
        android:stretchColumns="*">


        <TableRow
            android:id="@+id/tableRow5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" >

       <!-- SETTINGS -->
            <Button
                android:id="@+id/button1"
                android:layout_width="50dip"
                android:layout_height="50dip"
                android:layout_gravity="left"
                android:layout_weight="1"
                android:background="@drawable/options"
                android:clickable="true"
                android:minHeight="50dp"
                android:minWidth="50dp"
                android:visibility="visible" />

        <!-- LIST -->
            <Button
                android:id="@+id/button4"
                android:layout_width="0dip"
                android:layout_height="50dip"
                android:layout_gravity="right"
                android:layout_weight="1"
                android:background="@drawable/list"
                android:clickable="true"
                android:maxHeight="50dp"
                android:maxWidth="50dp"
                android:visibility="visible" />
        </TableRow>



   <!-- GESTURE (GOES FULL SCREEN ON BACKGROUND -->
   <android.gesture.GestureOverlayView
        android:id="@+id/gestureOverlayView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" >
   </android.gesture.GestureOverlayView>

        <TableRow>
    <!-- SEARCH -->
        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:background="@drawable/find"
            android:clickable="true"
            android:maxHeight="50dp"
            android:maxWidth="50dp"
            android:visibility="visible" />


    <!-- CLOSE -->
        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:background="@drawable/close"
            android:gravity="right|top" 
            android:clickable="true"
            android:Height="50dp"
            android:Width="50dp"
            android:visibility="visible" />

        </TableRow>

    </TableLayout>
</LinearLayout>

最佳答案

RelativeLayout 是关键:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/Frame"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:background="#6495ED">

    <android.gesture.GestureOverlayView
        android:id="@+id/gestureOverlayView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
    </android.gesture.GestureOverlayView>

    <ImageButton
        android:id="@+id/imageButton1"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:background="#F00" />

    <ImageButton
        android:id="@+id/imageButton2"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:background="#F00" />

    <ImageButton
        android:id="@+id/imageButton3"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:background="#F00" />

    <ImageButton
        android:id="@+id/imageButton4"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:background="#F00" />

</RelativeLayout>

关于java - 如何在 Android 布局上正确分配 4 个按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11301319/

相关文章:

java - 数据绑定(bind)到未知类型的容器

android - 如何解析 Android 布局 xml 文件以创建帮助页面的副本?

java - 拖放图像按钮消失在不同 View 后面

javascript - 使用 <xsl : param> on <xsl: for-each> doesn't work

java - 遍历所有已安装应用程序的 AndroidManifest.xml 文件?

java - 跨多个线程/节点的 session 管理

java - 使用android从字母数字字符串中提取数字

java - 如何解决java.lang.OutOfMemoryError?

Android 布局 mdpi 手机 vs 平板电脑

Android 根据 "Parent"微调器的选择更新微调器 - .notifyDataSetChange() 未触发?