2

我正在尝试在 Android 中设计一个像这样的屏幕:

示例图像

我在单独的 PNG 文件中拥有所有按钮、背景和图像,但我无法完成!我不知道如何将两个按钮放在背景中,而且我也遇到了与边框的距离问题。这是我到目前为止所拥有的:

<?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:orientation="vertical" 
    android:background="@drawable/fundo_tela">
    <ImageView
    android:id="@+id/imgtopo"
    android:src="@drawable/topo"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />
  <TextView  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:text="@string/telaInicio"  
        android:layout_gravity="center"  
        android:gravity="center"  
        android:textColor="#fff"  
        android:textSize="20dp" /> 


    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
                android:layout_marginTop="5dp"
                        android:layout_marginBottom="5dp"
        android:background="@drawable/fundoBotoes" >

<Button  android:id="@+id/Camera" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@color/cameraBselector">
</Button>
<Button 
    android:id="@+id/Galeria" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:background="@color/galleryBselector">
</Button>
</LinearLayout>
<Button 
    android:id="@+id/Pedidos" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"
    android:background="@color/pedidosBselector"
    android:layout_marginTop="15dp"
    android:layout_marginBottom="15dp"
    >
</Button>
</LinearLayout>
4

3 回答 3

0

当您说“两个按钮”时,我认为您正在谈论的是图库和相机按钮。

如果我理解正确你可以做这样的事情(我没有正确地测试它,所以你可能想要做一些额外的改变)

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="5dp"
    android:orientation="vertical"
    android:background="#000000"
    android:gravity="center"
>
    <Button  
        android:id="@+id/Camera" 
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content" 
        android:layout_margin="5sp"
        android:background="@color/cameraBselector"
    >
    </Button>
    <View
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:layout_margin="3sp"
        android:background="#41383C"
    />
    <Button 
        android:id="@+id/Galeria" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content"
        android:layout_margin="3sp"
        android:background="@color/galleryBselector"
    />

</LinearLayout>

如果我误解了什么,请告诉我。

于 2012-06-20T01:17:03.043 回答
0

尝试这个

<?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="@drawable/fundo_tela"
    android:layout_weight="100"

    android:orientation="vertical" >

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="20"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"

        android:orientation="vertical" >

        <ImageView
            android:id="@+id/imgtopo"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:src="@drawable/topo" />

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:text="@string/telaInicio"
            android:textColor="#fff"
            android:textSize="20dp" />
    </LinearLayout>

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="0px"
        android:layout_weight="60"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"
        android:background="@drawable/fundoBotoes"
        android:orientation="vertical" >

        <Button
            android:id="@+id/Camera"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@color/cameraBselector" >
        </Button>

        <Button
            android:id="@+id/Galeria"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@color/galleryBselector" >
        </Button>
    </LinearLayout>

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
                android:layout_height="0px"
        android:layout_weight="20"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"

        android:orientation="vertical" >

        <Button
            android:id="@+id/Pedidos"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="15dp"
            android:layout_marginTop="15dp"
            android:background="@color/pedidosBselector" >
        </Button>
    </LinearLayout>

</LinearLayout>

仅将第一个图像视图和文本分组到 Linearlayout 中,并将最后一个按钮分组到其他 LinearLayout 中。权重属性像百分比一样工作,这个例子是 20% 的顶部,60% 的主体和 20% 的页脚。

于 2012-06-20T01:18:18.157 回答
0

确实看起来正是你想要的。

<?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:orientation="vertical" >

<ImageView
    android:id="@+id/imgtopo"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:src="@drawable/ic_launcher" />


<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@android:color/darker_gray"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:gravity="center"
        android:paddingTop="10dp"
        android:text="Selecione a opção desejada:"
        android:textColor="#fff"
        android:textSize="18dp"
        android:textStyle="bold" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:layout_weight="0.90"
        android:background="@android:color/black"
        android:gravity="center"
        android:orientation="vertical" >

        <Button
            android:id="@+id/ButtonCamera"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.50"
            android:layout_margin="10dp"
            android:drawablePadding="-5sp"
            android:drawableTop="@android:drawable/ic_menu_camera"
            android:text="Tirar Foto"
            android:textColor="#FFFFFF" />

        <Button
            android:id="@+id/ButtonSlideShow"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.50"
            android:layout_margin="10dp"
            android:drawablePadding="-5sp"
            android:drawableTop="@android:drawable/ic_menu_slideshow"
            android:text="Galeria de Foto"
            android:textColor="#FFFFFF" />
    </LinearLayout>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Meus Pedidos" />
</LinearLayout>

于 2012-06-20T03:49:11.583 回答