我正在构建我的第一个android应用程序。在我的开始活动中,我想使用一些ImageViews而不是按钮,这些ImageViews是大的瓷砖,它们的宽度应该始终与父Layout匹配。我已经绘制了我的imageViews以适应正常的移动屏幕(我觉得4英寸)我怎么能让它们适合任何设备?像一个7或10英寸的平板电脑?
编辑:很遗憾,我使用了fitCenter并没有任何区别,那是我的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" >
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="24dp"
android:layout_marginTop="122dp"
android:drawableLeft="@drawable/home"
android:drawablePadding="@dimen/padding_small"
android:padding="@dimen/padding_small"
android:text="My Classes"
android:textSize="@dimen/a12" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button3"
android:layout_alignRight="@+id/button3"
android:layout_centerVertical="true"
android:layout_below="@+id/button3"
android:layout_marginTop="35dp"
android:drawableLeft="@drawable/image"
android:text="Update Offline Data"
android:textSize="@dimen/a12" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_alignRight="@+id/button1"
android:layout_below="@+id/button1"
android:layout_marginTop="35dp"
android:drawableLeft="@drawable/configure"
android:text="Settings"
android:textSize="@dimen/a12" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginTop="38dp"
android:scaleType="fitCenter"
android:src="@android:drawable/bottom_bar" />
答案 0 :(得分:2)
为了适合您可以在控件中使用android:scaleType =“fitCenter”属性的图像 像这样:
<ImageButton
android:id="@+id/imageViewSecurity"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/security"
android:background="@null"
android:scaleType="fitCenter" />
答案 1 :(得分:0)
不要给它们一个绝对宽度,而是使用常量match_parent
作为android:width
,它总是给它们与父视图相同的宽度。活动的根视图将与具有此宽度和/或高度的屏幕具有相同的大小。
要将ImageView中的图片尺寸调整为正确尺寸,请使用fitCenter
作为android:scaletype
。
答案 2 :(得分:0)
如果您要做的就是让图像与其容器的宽度相匹配(并且其容器与其父级的宽度相匹配),那么您应该将图像设置为View的背景,而不是它的src。无论它的大小如何,我相信它会拉伸它以填充整个视图。