【 Android 】控制ImageView大小&位置
ImageView: 一般是使用來放圖案的view。
xml:
xml:
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignLeft="@+id/textView1"
android:layout_below="@+id/textView1" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="100dip" //設置此view的寬
android:layout_height="50dip" //設置此view的高
android:layout_marginLeft="50dip" //設置此view離framelayout的左邊間距
android:layout_marginTop="100dip" //設置此view離framelayout的上面間距
android:scaleType="fitXY" //設置圖案可以完整充滿此fiew
android:src="@drawable/yellowLine" />
</FrameLayout>
上列範例可以看到藍色框框是整個framelayou,而黃色線條是一個imageview;
先設定imageview的layout_hight、layout_weigh為固定值之後再設定
laoyout_scaletyp = fitxy就可以將整張圖充滿整個imageview(如圖黃色部份); 再設定layout_marginleft、layout_margintop就可以控制imageview距離整個framelayout的位置。
ps: 此作法比較適合圖案是單一顏色或簡單的圖案,而且是針對單一device的解析度而設計。
下列為imageview的屬性設置
属性名称
|
描述
| |||||||||||||||||||||||||||
android:adjustViewBounds
|
是否保持宽高比。需要与 maxWidth、 MaxHeight一起使用,否则单独使用没有效果。
| |||||||||||||||||||||||||||
android:cropToPadding
|
是否截取指定区域用空白代替。单独设置无效果,需要与scrollY一起使用,效果如下,实现代码见代码部分:
| |||||||||||||||||||||||||||
android:maxHeight
|
设置 View的最大高度,单独使用无效,需要与setAdjustViewBounds一起使用。如果想设置图片固定大小,又想保持图片宽高比,需要如下设置:
1) 设置 setAdjustViewBounds为 true;
2) 设置 maxWidth、 MaxHeight;
3) 设置设置 layout_width和 layout_height为wrap_content。
| |||||||||||||||||||||||||||
android:maxWidth
|
设置 View的最大宽度。同上。
| |||||||||||||||||||||||||||
android:scaleType
|
设置图片的填充方式。
| |||||||||||||||||||||||||||
android:src
|
设置 View的 drawable(如图片,也可以是颜色,但是需要指定 View的大小 )
| |||||||||||||||||||||||||||
android:tint
|
将图片渲染成指定的颜色。见下图:
左边为原图,右边为设置后的效果,见后面代码。
|
參考來源:http://daydayup1989.iteye.com/blog/777766
留言
張貼留言