Android學習筆記之ImageView

2021-09-01 02:14:47 字數 4406 閱讀 7633

imageview類可以載入各種**的(如資源或庫),需要計算影象的尺寸,比便它可以在其他布局中使用,並提供例如縮放和著色(渲染)各種顯示選項。

<1>

屬性屬性名

對應的方法

描述android:adjustviewbounds

setadjustviewbounds(boolean)

設定該屬性為真可以在 imageview 調整邊界時保持的縱橫比例。(需要與maxwidth、maxheight一起使用,否則單獨使用沒有效果。)

android:baseline

setbaseline(int)

檢視內基線的偏移量

android:baselinealignbottom

setbaselinealignbottom(boolean)

如果為true,影象檢視將基線與父控制項底部邊緣對齊。

android:croptopadding

如果為真,會剪下以適應內邊距的大小。

android:maxheight

setmaxheight(int)

為檢視提供最大高度的可選引數

android:maxwidth

setmaxwidth(int)

為檢視提供最大寬度的可選引數。

android:scaletype

setscaletype(imageview.scaletype)

控制為了使適合 imageview 的大小,應該如何變更大小或移動

android:src

setimageresource(int)

設定可繪製物件作為 imageview 顯示的內容

android:tint

setcolorfilter(int,porterduff.mode)

為設定著色顏色

<2>

方法:public voidsetmaxheight(int maxheight)

用於設定該檢視支援的最大高度的可選引數。只有 setadjustviewbounds(boolean) 為真時有效。要設定影象最大尺寸為 100×100,並保持原始比率,做法如下:

1) 設定 adjustviewbounds 為真;

2) 設定 maxwidth 和 maxheight 為 100;

3) 設定寬、高的布局引數為 wrap_content。

注意,如果原始影象較小,即使設定了該引數,影象仍然要比 100×100 小。如果要設定為 固定大小,需要在布局引數中指定大小,並使用 setscaletype(imageview.scaletype) 函式來檢測,如何 將其調整到適當的大小。

引數maxheight 該檢視的最大高度。

相關 xml 屬性

android:maxheight

public voidsetmaxwidth(int maxwidth)

用於設定該檢視支援的最大寬度的可選引數。只有 setadjustviewbounds(boolean) 為真時有效。要設定影象最大尺寸為 100×100,並保持原始比率,做法如下:

4) 設定 adjustviewbounds 為真;

5) 設定 maxwidth 和 maxheight 為 100;

6) 設定寬、高的布局引數為 wrap_content。

注意,如果原始影象較小,即使設定了該引數,影象仍然要比 100×100 小。如果要設定為 固定大小,需要在布局引數中指定大小,並使用 setscaletype(imageview.scaletype) 函式來檢測,如何 將其調整到適當的大小。

引數maxwidth 該檢視的最大寬度。

相關 xml 屬性

android:maxwidth

public voidsetscaletype(imageview.scaletype scaletype)

控制影象應該如何縮放和移動,以使影象與 imageview 一致。

引數scaletype 需要的縮放方式。

相關 xml 屬性

android:scaletype

public voidsetselected(boolean selected)

改變檢視的選中狀態。檢視有選中和未選中兩個狀態。注意,選擇狀態不同於焦點。 典型的選中的檢視是象 listview 和 gridview 這樣的 adapterview 中顯示的 內容;選中的內容會顯示為高亮。

引數selected 為真,將檢視設為選中狀態;否則為假。

public voidsetimageuri(uri uri)

設定指定的 uri 為該 imageview 顯示的內容。

該操作讀取位圖,並在 ui 執行緒中解碼,因此可能導致反應遲緩。 如果反應遲緩,可以考慮用 setimagedrawable(drawable)、 setimagebitmap(bitmap) 或者 bitmapfactory 代替。

引數uri 影象的 uri。

public voidsetimagebitmap(bitmap bm)

設定位圖作為該 imageview 的內容。

引數bm 設定的點陣圖。

public voidsetimagedrawable(drawable drawable)

設定可繪製物件為該 imageview 顯示的內容。

引數drawable 設定的可繪製物件。

public voidsetadjustviewbounds(boolean adjustviewbounds)

當你需要在 imageview 調整邊框時保持可繪製物件的比例時,將該值設為真。

引數adjustviewbounds 是否調整邊框,以保持可繪製物件的原始比例。

相關 xml 屬性

android:adjustviewbounds

public voidsetalpha(int alpha)

設定透明度

<3>

scaletype屬性:

public static final imageview.scaletypecenter

在檢視中使影象居中,不執行縮放。 在 xml 中可以使用的語法: android:scaletype="center"。

public static final imageview.scaletypecenter_crop

均衡的縮放影象(保持影象原始比例),使的兩個座標(寬、高)都大於等於 相應的檢視座標(負的內邊距)。影象則位於檢視的**。 在 xml 中可以使用的語法:android:scaletype="centercrop"。

public static final imageview.scaletypecenter_inside

均衡的縮放影象(保持影象原始比例),使的兩個座標(寬、高)都小於等於 相應的檢視座標(負的內邊距)。影象則位於檢視的**。 在 xml 中可以使用的語法:android:scaletype="centerinside"。

public static final imageview.scaletypefit_center

使用 center 方式縮放影象。 在 xml 中可以使用的語法: android:scaletype="fitcenter"。

public static final imageview.scaletypefit_end

使用 end 方式縮放影象。 在 xml 中可以使用的語法: android:scaletype="fitend"。

public static final imageview.scaletypefit_start

使用 start 方式縮放影象。 在 xml 中可以使用的語法:android:scaletype="fitstart"。

public static final imageview.scaletypefit_xy

使用 fill 方式縮放影象。 在 xml 中可以使用的語法: android:scaletype="fitxy"。

public static final imageview.scaletypematrix

繪製時,使用影象矩陣方式縮放。影象矩陣可以通過 setimagematrix(matrix) 設定。在 xml 中可以使用的語法: android:scaletype="matrix"。

案例:<?xml version="1.0" encoding="utf-8"?>

Android學習筆記之fragment

fragment 二 有什麼用?一般介面設計 通過fragment實現 三 fragment怎麼用 生命週期方法被呼叫契機 新建乙個類繼承fragment或者fragment的派生類 listfragment preferencefragment 2.fragment新增使用者介面 引數 注 如果你...

Android學習筆記之Intent

例如 startactivity new intent mainactivity.this,myaty.class 使用startactivity方法後出現at dalvik.system.nativestart.main native method 這一錯誤的原因是因為忘了在androidmani...

android學習筆記之Activity

建立activity 的要點 乙個activity 就是乙個類,並且這個類要繼承activity 需要複寫oncreate方法 每乙個activity 都需要在androidmanifest.xml 中進行配置,包含filter 的為主activity。為activity新增必要的控制項 activ...