对不起,这是一个菜鸟问题,但我很喜欢布局。我如何制作一个定位flashlight_button的布局,以便保持顶部和底部的图像视图之间的比例。
在nexus s(800x480)上看起来没问题,这就是我想要的东西
... image ...
但很明显,当我切换到galaxy nexus(1280 x 720)时,它会将中间按钮移动到顶部,就像这样(所以它不会保留顶部和底部边距之间的比例,如同在nexus s上设计的那样)
...图像...
布局在这里:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
android:padding="20dp" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="50dp"
android:contentDescription="@string/application_logo_description"
android:src="@drawable/mylight" />
<ImageButton
android:id="@+id/settings_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:background="@null"
android:contentDescription="@string/settings_button_description"
android:src="@drawable/settings_button" />
<ImageButton
android:id="@+id/flashlight_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/imageView1"
android:layout_centerHorizontal="true"
android:background="@null"
android:contentDescription="@string/flashlight_button_description"
android:src="@drawable/flashlight_button_selector" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/ad_button"
android:layout_centerHorizontal="true"
android:contentDescription="@string/powered_by_description"
android:src="@drawable/powered_by" />
<ImageButton
android:id="@+id/ad_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="@null"
android:contentDescription="@string/ad_button_description"
android:src="@drawable/freeml" />
所以它只是将顶部和底部图像视图锚定到父边缘,而中间按钮只是使用layout_maginBottom向下推。我提供不同密度和明显密度像素的缩放图像来表示大小,因为它似乎在更大的屏幕上是不够的。
这是正确的方法吗?不同的.xml文件或..?
//对不起,我仍然无法发布图片,希望你能想象它。
答案 0 :(得分:1)
您是否考虑过根据父母的中心放置手电筒图像? 所以现在你正在推动手电筒图像(根据顶部图像位置)。将手电筒图像中心对齐并给它一些底部边距(根据您的设计将其推高一点)会更准确。