Android 为什么使用imageview';s的宽度和高度小于可拉伸的';s的宽度和高度?
我正在测试Android 为什么使用imageview';s的宽度和高度小于可拉伸的';s的宽度和高度?,android,android-imageview,Android,Android Imageview,我正在测试ImageView的功能,同时遇到了一些问题。 我有一张1000*562的图像。我的测试设备是三星I9103,屏幕尺寸是480*800。我的项目布局非常简单,只是一个ImageView <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match
ImageView
的功能,同时遇到了一些问题。
我有一张1000*562的图像。我的测试设备是三星I9103,屏幕尺寸是480*800。我的项目布局非常简单,只是一个ImageView
<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">
<ImageView
android:id="@+id/test1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/pic_1000_562"/>
</RelativeLayout>
但我明白了
11-17 17:48:46.865: V/Testresult(15225): width= 480 height= 690
11-17 17:48:46.865: V/Testresult(15225): drawawidth= 1000 drawableheight= 562
我的问题是为什么drawabldwidth是1000而不是480,因为图像必须缩放以适应屏幕?这是因为您的
ImageView
占据整个屏幕,因此它将占据设备的分辨率。我想这部分很清楚
至于可绘制的,不管ImageView
大小如何,它都将获得与资源中相同的可绘制内容和大小。ImageView
越小越好,drawable还是一样的
要获取缩放图像的尺寸,可以获取水平和垂直比例:
- 水平方向:480/1000=0.48
- 垂直方向:562/800=0.7025
- 水平方向:1000*0.48=480
- 垂直方向:562*0.48=269.76
11-17 17:48:46.865: V/Testresult(15225): width= 480 height= 690
11-17 17:48:46.865: V/Testresult(15225): drawawidth= 1000 drawableheight= 562