android設置圖片大小
A. android中imageview里的圖片大小是否可以比imageview本身大,如果可以,如何設置
ImageView可以放大縮小,也可以通過Scaletype這個屬性來指定。
Scaletype的設置的方式包括:
1. 在layout xml中定義android:scaleType="CENTER"
2. 或在代碼中調用imageView.setScaleType(ImageView.ScaleType.CENTER);
Scaletype的取值和區別:
1. SetScaleType(ImageView.ScaleType.CENTER);
按圖片的原來size居中顯示,當圖片長/寬超過View的長/寬,則截取圖片的居中部分顯示
2. SetScaleType(ImageView.ScaleType.CENTER_CROP);
按比例擴大圖片的size居中顯示,使得圖片長(寬)等於或大於View的長(寬)
3. setScaleType(ImageView.ScaleType.CENTER_INSIDE);
將圖片的內容完整居中顯示,通過按比例縮小或原來的size使得圖片長/寬等於或小於View的長/寬
4. setScaleType(ImageView.ScaleType.FIT_CENTER);
把圖片按比例擴大/縮小到View的寬度,居中顯示
5. FIT_START, FIT_END在圖片縮放效果上與FIT_CENTER一樣,只是顯示的位置不同,FIT_START是置於頂部,FIT_CENTER居中,FIT_END置於底部。
在此就不給出示例了。
6. FIT_XY
不按比例縮放圖片,目標是把圖片塞滿整個View。
B. android 圖片大小如何設置可以自適應不同解析度
不知道你什麼情況下要讓圖片自適應不通過解析度。給你舉個例子吧,希望對你有所幫助!當你把圖片塞到imageView中時,布局注意
不要把值定死 比如:
android:layout_width="100dp"
android:layout_height="90dp"
直接給他
android:layout_width="fill_parent"
android:layout_height="wrap_content"
這樣 ,才能適應你解析度。
還有就是drawable_hdpi ,ldpi,mdpi分別代表不同解析度drawable_hdpi(800*480),ldpi(480*320),mdpi(320*240),你自己放圖片時注意了。
C. Android用ImageSpan顯示的圖片怎麼調整大小
ImageSpan是通過bitmap生成的,如果要調整圖片的大小,你可以對bitmap進行預處理,比如scale之類的操作,生成你目標的bitmap再生成ImageSpan。
還有就是,可以把圖片設置到ImageView里,調整好ImageView里圖片的大小,再把ImageView生成對應的bitmap,從而生成ImageSpan。
xml視圖生成bitmap參照:
D. android bitmap 改變圖片大小
Optionsoptions1=newOptions();
options1.inJustDecodeBounds=true;
BitmapFactory.decodeFile(filePath,options1);
options1.inSampleSize=RegisterTool.calculateInSampleSize(options1,110,160);//110,160:轉換後的寬和高,具體值會有些出入
options1.inJustDecodeBounds=false;
Bitmapbitmap=BitmapFactory.decodeFile(filePath,options1);//filePath:文件路徑
(BitmapFactory.Optionsoptions,
intreqWidth,intreqHeight){
finalintheight=options.outHeight;
finalintwidth=options.outWidth;
intinSampleSize=1;
if(height>reqHeight||width>reqWidth){
finalintheightRatio=Math.round((float)height
/(float)reqHeight);
finalintwidthRatio=Math.round((float)width/(float)reqWidth);
inSampleSize=heightRatio<widthRatio?widthRatio:heightRatio;
}
returninSampleSize;
}
//壓縮圖片並將Bitmap保存到本地
FileOutputStreamout=newFileOutputStream(newFile(filePath));
saveBitmap.compress(Bitmap.CompressFormat.JPEG,60,out);//60代表壓縮40%
E. android中如何動態修改ImageView中圖片的大小 比如說點擊該圖片後圖片能變大
使用點陣圖(Bitmap)再重新繪制遍
//原點陣圖
Bitmap btm1 = BitmapFactory.decodeResource(Main.this.getResources(), R.drawable.hh);
BitmapDrawable bd1=BitmapDrawable(btm1);
imageView.setBackgroundDrawable(bd1);
放大後 滑動時計算 圖片的邊是否在屏幕外,如果在屏幕外就可移動,比如 向上滑動,是想看圖片下面的部分,此時計算圖片的底邊是否在屏幕外,如果是,就可以向上移動圖片。
Scaletype的設置的方式包括:
1、在layout xml中定義android:scaleType="CENTER"
2、或在代碼中調用imageView.setScaleType(ImageView.ScaleType.CENTER);
(5)android設置圖片大小擴展閱讀:
根據位深度,可將點陣圖分為1、4、8、16、24及32點陣圖像等。每個像素使用的信息位數越多,可用的顏色就越多,顏色表現就越逼真,相應的數據量越大。
例如,位深度為 1 的像素點陣圖只有兩個可能的值(黑色和白色),所以又稱為二值點陣圖。位深度為 8 的圖像有 2^8(即 256)個可能的值。位深度為 8 的灰度模式圖像有 256 個可能的灰色值。
RGB圖像由三個顏色通道組成。8 位/通道的 RGB 圖像中的每個通道有 256 個可能的值,這意味著該圖像有 1600 萬個以上可能的顏色值。
有時將帶有 8 位/通道 (bpc) 的 RGB 圖像稱作 24 點陣圖像(8 位 x 3 通道 = 24 位數據/像素)。通常將使用24位RGB組合數據位表示的的點陣圖稱為真彩色點陣圖。
F. android怎麼設置自適應大小的背景圖片
需要給你的ImageView布局加上Android:adjustViewBounds="true"
<ImageView android:id="@+id/test_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:adjustViewBounds="true"
android:layout_gravity="center"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_launcher" />
然後,在代碼里設置ImageView.最大寬度和最大高度,因為adjustViewBounds屬性只有在設置了最大高度和最大寬度後才會起作用
int screenWidth = getScreenWidth(this);
ViewGroup.LayoutParams lp = testImage.getLayoutParams();
lp.width = screenWidth;
lp.height = LayoutParams.WRAP_CONTENT;
testImage.setLayoutParams(lp);
testImage.setMaxWidth(screenWidth);
testImage.setMaxHeight(screenWidth * 5); 這里其實可以根據需求而定,我這里測試為最大寬度的5倍
G. android如何設置圖片自適應控制項大小
<ImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/ic_launcher"/>
寬度和高度使用fill_parent (填充父窗體)
fill_parent 可以使控制項充滿父控制項,也就是你說的自動使用圖片控制項外的控制項大小。