代码之家  ›  专栏  ›  技术社区  ›  Gold.strike

安卓:如何在启动屏幕上对齐两个图像

  •  7
  • Gold.strike  · 技术社区  · 7 年前

    我想使用包含2个图像的splah屏幕:

    • 主图像必须完全居中

    预期渲染如下: expected splash

    actual splash

     <?xml version="1.0" encoding="utf-8" ?>
     <layer-list
        xmlns:android="http://schemas.android.com/apk/res/android">
            <item>
                <shape android:shape="rectangle">
                    <solid android:color="@color/ComplementColor" />
                    <padding 
                        android:left="0dip" 
                        android:top="0dip"
                        android:right="0dip" 
                        android:bottom="0dip" />
                </shape>
            </item>
            <item>
                <bitmap android:src="@drawable/main_logo"
                   android:gravity="center" />
            </item>
            <item>
                <bitmap android:src="@drawable/secondary_logo"
                   android:gravity="bottom" />
            </item>
    </layer-list>
    
    3 回复  |  直到 7 年前
        1
  •  12
  •   Gold.strike    7 年前

    我终于选择了另一个接近于“Leonardo Cavazzani”建议的解决方案。

    <?xml version="1.0" encoding="utf-8" ?>
      <layer-list
        xmlns:android="http://schemas.android.com/apk/res/android">
        <item>
          <shape android:shape="rectangle">
            <solid android:color="@color/ComplementColor" />
              <padding 
                android:left="0dip" 
                android:top="0dip"
                android:right="0dip" 
                android:bottom="0dip" />
          </shape>
        </item>
        <item>
          <bitmap android:src="@drawable/main_logo"
                  android:gravity="center" />
        </item>
        <item
          android:bottom="40dp">
          <bitmap android:src="@drawable/secondary_logo"
                  android:gravity="bottom" />
         </item>
      </layer-list>
    
        2
  •  1
  •   Leonardo Cavazzani    7 年前

    为位图设置边距底部

    <bitmap android:src="@drawable/secondary_logo"
                    android:gravity="bottom"
                    android:layout_marginBottom="100dp" />
    
        3
  •  0
  •   Marcos Vasconcelos    7 年前

    您可以通过LayoutXML而不是Drawable来实现它。XML