編輯:關於Android編程
ScaleType表示ImageView的縮放類型,決定了一張圖片在ImageView控件內如何縮放和顯示。
ScaleType的官方文檔:
https://developer.android.com/reference/android/widget/ImageView.ScaleType.html
ScaleType可以使用java代碼或xml屬性來設置。
ScaleType是一個枚舉類型,定義如下。
public enum ScaleType { MATRIX (0), FIT_XY (1), FIT_START (2), FIT_CENTER (3), FIT_END (4), CENTER (5), CENTER_CROP (6), CENTER_INSIDE (7); ScaleType(int ni) { nativeInt = ni; } final int nativeInt; }以centerCrop為例,使用java代碼設置,代碼為imageView.setScaleType(ImageView.ScaleType.CENTER_CROP)。
在xml布局文件中,可以使用如下屬性。
android:scaleType="center" android:scaleType="centerCrop" android:scaleType="centerInside" android:scaleType="fitStart" android:scaleType="fitCenter" android:scaleType="fitEnd" android:scaleType="fitXY" android:scaleType="matrix"
下面,結合示例詳細介紹每一種類型。
首先准備兩張示例圖片,一張小圖和一張大圖,分別為adidas1.png(135*135)和adidas2.png(540*540)。
然後添加如下xml布局文件。將ImageView的寬高設置為150dp和100dp,以確保小圖的尺寸小於ImageView的尺寸,大圖的尺寸大於ImageView的尺寸。並將ImageView的背景色設置成灰色(#cccccc),方便查看效果。
CENTER
Center the image in the view, but perform no scaling.
把圖片放置到ImageView的中心,不執行縮放。如果圖片尺寸比ImageView小,會有空白區域;如果圖片尺寸比ImageView大,圖片的中間區域會被裁剪出來顯示到ImageView中。
CENTER_CROP
Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions (width and height) of the image will be equal to or larger than the corresponding dimension of the view (minus padding). The image is then centered in the view.
把圖片放置到ImageView的中心,執行縮放。將圖片的寬度和高度按照相同比例縮放,直到圖片的寬度大於或者等於ImageView的寬度,同時圖片的高度大於或者等於ImageView的高度。
CENTER_INSIDE
Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions (width and height) of the image will be equal to or less than the corresponding dimension of the view (minus padding).
把圖片放置到ImageView的中心。如果圖片的尺寸小於ImageView的尺寸,不縮放;否則,將圖片的寬度和高度按照相同比例縮放,直到圖片的寬度小於ImageView的寬度,同時圖片的高度小於ImageView的高度。
FIT_CENTER
Scale the image using CENTER.
把圖片放置到ImageView的中心,然後按相同比例放大或縮小,直到圖片寬度等於ImageView寬度,或者高度等於ImageView高度。
FIT_START
Scale the image using START.
把圖片放置到ImageView的左上角,然後按相同比例放大或縮小,直到圖片寬度等於ImageView寬度,或者高度等於ImageView高度。
FIT_END
Scale the image using END.
把圖片放置到ImageView的右下角,然後按相同比例放大或縮小,直到圖片寬度等於ImageView寬度,或者高度等於ImageView高度。
FIT_XY
Scale the image using FILL.
不保持圖片的寬高比例,執行放大或縮小,直到圖片寬度等於ImageView寬度,同時高度等於ImageView高度。
MATRIX
Scale using the image matrix when drawing. The image matrix can be set using setImageMatrix(Matrix).
不縮放圖片,用圖片的矩陣從左上角開始來繪制。
本文分為兩個部分:一是QQ的授權部分;二是獲取用戶的基本信息部分一、授權部分1.首先,先去騰訊開放平台獲取APP ID和APP KEY(未注冊騰訊開發者賬號的可能需要先注
handler在安卓開發中是必須掌握的技術,但是很多人都是停留在使用階段。使用起來很簡單,就兩個步驟,在主線程重寫handler的handleMessage( )方法,在
復制代碼 代碼如下://刪除全部else if(id==R.id.btnDelet){new AlertDialog.Builder(this).setTitle(刪除提
這次是一個時鐘類應用,目前依舊是主要的功能,長得還是很挫。當然了,核心功能是有的……鬧鐘之前的准備布局的話,不管是采用FrameLayout或