如何为所有 android 屏幕对齐图像视图
How to align an image-view for all android screens
我想对齐一个图像视图,它在 Android 选项卡屏幕之外的所有 android 屏幕上显示相同。当应用程序在模拟器或实时设备上运行时,会注意到 imageview 的不同对齐方式。我该如何正确对齐它们??
这是我的activity.xml
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
android:background="#fff" >
<ImageView
android:id="@+id/forts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="150dp"
android:src="@drawable/forts" />
<ImageView
android:id="@+id/portal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/forts"
android:layout_below="@+id/forts"
android:src="@drawable/portal" />
<ImageView
android:id="@+id/emergency"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/forts"
android:layout_toRightOf="@+id/portal"
android:src="@drawable/emergency" />
<ImageView
android:id="@+id/aboutus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/portal"
android:layout_toLeftOf="@+id/emergency"
android:src="@drawable/aboutus" />
<ImageView
android:id="@+id/maps"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/emergency"
android:layout_alignLeft="@+id/emergency"
android:src="@drawable/maps" />
<ImageView
android:id="@+id/mailus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/emergency"
android:layout_alignTop="@+id/aboutus"
android:src="@drawable/mailus" />
</RelativeLayout>
使用不同类型的图像,即 ldpi、mdpi、hdpi、xhdpi、xxhdpi。
对于不同的屏幕尺寸和不同的密度图像会有所不同。
为了使图像适合 imageview 使用,
android:scaleType="fitXY"
如果你想让你的图像视图与所有设备相似,你需要为不同的屏幕尺寸和不同的图像创建不同的布局文件夹,如 ldpi、hdpi、mdpi 为不同的密度。
您可以在不同的值文件夹中设置变量尺寸为
1:values
-dimens.xml
<dimen name="image_email_width">45dp</dimen>
<dimen name="image_email_height">35dp</dimen>
2:values-xlarge
-dimens.xml
<dimen name="image_email_width">90dp</dimen>
<dimen name="image_email_height">70dp</dimen>
然后将您的 Imageview 设置为
<ImageView
android:id="@+id/portal"
android:layout_width="@dimens/image_email_width"
android:layout_height="@dimens/image_email_height"
android:layout_alignLeft="@+id/forts"
android:layout_below="@+id/forts"
android:src="@drawable/portal" />
我想对齐一个图像视图,它在 Android 选项卡屏幕之外的所有 android 屏幕上显示相同。当应用程序在模拟器或实时设备上运行时,会注意到 imageview 的不同对齐方式。我该如何正确对齐它们??
这是我的activity.xml
<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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity"
android:background="#fff" >
<ImageView
android:id="@+id/forts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="150dp"
android:src="@drawable/forts" />
<ImageView
android:id="@+id/portal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/forts"
android:layout_below="@+id/forts"
android:src="@drawable/portal" />
<ImageView
android:id="@+id/emergency"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/forts"
android:layout_toRightOf="@+id/portal"
android:src="@drawable/emergency" />
<ImageView
android:id="@+id/aboutus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/portal"
android:layout_toLeftOf="@+id/emergency"
android:src="@drawable/aboutus" />
<ImageView
android:id="@+id/maps"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/emergency"
android:layout_alignLeft="@+id/emergency"
android:src="@drawable/maps" />
<ImageView
android:id="@+id/mailus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/emergency"
android:layout_alignTop="@+id/aboutus"
android:src="@drawable/mailus" />
</RelativeLayout>
使用不同类型的图像,即 ldpi、mdpi、hdpi、xhdpi、xxhdpi。
对于不同的屏幕尺寸和不同的密度图像会有所不同。 为了使图像适合 imageview 使用,
android:scaleType="fitXY"
如果你想让你的图像视图与所有设备相似,你需要为不同的屏幕尺寸和不同的图像创建不同的布局文件夹,如 ldpi、hdpi、mdpi 为不同的密度。
您可以在不同的值文件夹中设置变量尺寸为
1:values
-dimens.xml
<dimen name="image_email_width">45dp</dimen>
<dimen name="image_email_height">35dp</dimen>
2:values-xlarge
-dimens.xml
<dimen name="image_email_width">90dp</dimen>
<dimen name="image_email_height">70dp</dimen>
然后将您的 Imageview 设置为
<ImageView
android:id="@+id/portal"
android:layout_width="@dimens/image_email_width"
android:layout_height="@dimens/image_email_height"
android:layout_alignLeft="@+id/forts"
android:layout_below="@+id/forts"
android:src="@drawable/portal" />