1.2 Các d ng tài nguyên hình nh ạng tài nguyên hình ảnh ảnh Bao g m các đ nh d ng :ồm cả đình dạng *.xml và định ịnh ạn định Đ nh d ng nh nh phân, Android h tr 3 đ nh d ng ịnh ạn định
Trang 1BÀI 6: TÀI NGUYÊN NG D NG HÌNH NH VÀ GIAO DI N ỨNG DỤNG HÌNH ẢNH VÀ GIAO DIỆN ỤNG HÌNH ẢNH VÀ GIAO DIỆN ẢNH VÀ GIAO DIỆN ỆN
1.1 Th m c l u tr - Đ nh dang – Truy xu t ư mục lưu trữ - Định dang – Truy xuất ục lưu trữ - Định dang – Truy xuất ư mục lưu trữ - Định dang – Truy xuất ữ - Định dang – Truy xuất ịnh dang – Truy xuất ất
Th m c l u tr :ư mục lưu trữ : ục lưu trữ : ư mục lưu trữ : ữ :
Các tìa nguyên hình nh đảnh được lưu trữ trong thư mục ư mục lưu trữ :ợc lưu trữ trong thư mục ư mục lưu trữ :c l u tr trong th m c ữ : ư mục lưu trữ : ục lưu trữ : res/drawable
Có th có nhi u th m c drawable theo t h n đ nh ể có nhiều thư mục drawable theo từ hạn định ều thư mục drawable theo từ hạn định ư mục lưu trữ : ục lưu trữ : ừ hạn định ạn định ịnh khác nhau :
Ví d : drawable-hdpi, ục lưu trữ :
Đ nh d ng :ịnh ạn định
Tài nguyên hình nh bao g m c đình d ng *.xml và đ nhảnh được lưu trữ trong thư mục ồm cả đình dạng *.xml và định ảnh được lưu trữ trong thư mục ạn định ịnh
d ng hình nh (.png, gif, jpg)ạn định ảnh được lưu trữ trong thư mục
Truy xu t : bao g m 2 cách th c :ất : bao gồm 2 cách thức : ồm cả đình dạng *.xml và định ức :
Ví d truy xu t tài nguyên hình nh : ục lưu trữ : ất : bao gồm 2 cách thức : ảnh được lưu trữ trong thư mục
Resources res = getResources();
Drawable drawable = res.getDrawble(R.drawable.ic_launcher);
<imageView Android : layout_width=”50dp”
Android :layout_height=”50dp”
Android : src = “@drawable/ic_launcher”/>
<imageButton Android : layout_width=”50dp”
Android :layout_height=”50dp”
Android : src = “@drawable/ic_launcher”/>
Trang 21.2 Các d ng tài nguyên hình nh ạng tài nguyên hình ảnh ảnh
Bao g m các đ nh d ng :ồm cả đình dạng *.xml và định ịnh ạn định
Đ nh d ng nh nh phân, Android h tr 3 đ nh d ng ịnh ạn định ảnh được lưu trữ trong thư mục ịnh ỗ trợ 3 định dạng ợc lưu trữ trong thư mục ịnh ạn định tài nguyên hình nh :png, jpg và gif.ảnh được lưu trữ trong thư mục
Các th c thi c a Bitmap bao g m :ực thi của Bitmap bao gồm : ủa Bitmap bao gồm : ồm cả đình dạng *.xml và định
o S d ng nh tài nguyên thông qua ử dụng như tài nguyên thông qua ục lưu trữ : ư mục lưu trữ : R.drawable.filename
o Tham chi u biên d ch tài nguyên thông qua đ i ếu biên dịch tài nguyên thông qua đối ịnh ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng BitmapDrawable
S d ng các thu c tính Bitmap trong XML :ử dụng như tài nguyên thông qua ục lưu trữ : ộc tính Bitmap trong XML :
o AntinAias (XML)
o Dither
o Filter
o Gravity
o Mipmap
o Titlemode
o Automirrored
Ví d xât d ng Bitmap trong XML : mipmap.xmlục lưu trữ : ực thi của Bitmap bao gồm :
<bitmap xmlns:android=http://schemas.android.com/apk/res/android Android;mipmap=”false”
Android;src=”@drawable/caro”
Android;titleMode=”repeat”>
</bitmap>
Truy xu t trong Java code:ất : bao gồm 2 cách thức :
Trang 3bitmapDrawable drawable
=(BitmapDrawable)getResources().getDrawable(R.drawable(R.drawable mipmap));
Tài nguyên hình nh cho các đ i tảnh được lưu trữ trong thư mục ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng đa giác đư mục lưu trữ :ợc lưu trữ trong thư mục c vẽ
b ng XML bao g m :ằng XML bao gồm : ồm cả đình dạng *.xml và định
o Rectangle
o Oval
o Line
o Ring
Tham chi u biên d ch tài nguyên thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng GradientDrawable
S d ng các thu c tính đ c u t o đ i tử dụng như tài nguyên thông qua ục lưu trữ : ộc tính Bitmap trong XML : ể có nhiều thư mục drawable theo từ hạn định ất : bao gồm 2 cách thức : ạn định ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng :
o Padding (Rectangle) – Integer
Trang 4 S d ng các thu c tính đ c u t o đ i tử dụng như tài nguyên thông qua ục lưu trữ : ộc tính Bitmap trong XML : ẻ cấu tạo đối tượng : ất : bao gồm 2 cách thức : ạn định ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng :
o Solid – integer
o Stroke – integer
M t s thu c tính ch s d ng cho đ i tộc tính Bitmap trong XML : ối ộc tính Bitmap trong XML : ỉ sử dụng cho đối tượng Ring : ử dụng như tài nguyên thông qua ục lưu trữ : ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng Ring :
Ví d : ục lưu trữ :
<shape xmlns : android = “http://schemas.android.com/apk/res/android” Androi:shape=”rectangle”>
<gradient
Android:angle=”90”
Android:startColor=”@android:color/holo_blue_bright”
Android:type=”linear”/>
<corrners android : radius=”20dp”/>
<size
Android:height=”80dp”
Android:width=”80dp”/>
</shape>
Trang 5 LayerList :
Tài nguyên hình nh cho phép qu n lý m ng các đ i ảnh được lưu trữ trong thư mục ảnh được lưu trữ trong thư mục ảnh được lưu trữ trong thư mục ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh đảnh được lưu trữ trong thư mục ư mục lưu trữ :ợc lưu trữ trong thư mục c vẽ ch ng lên nhau, m i đ i ồm cả đình dạng *.xml và định ỗ trợ 3 định dạng ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh đảnh được lưu trữ trong thư mục ư mục lưu trữ :ợc lưu trữ trong thư mục c quy ư mục lưu trữ :ớc là 1 item.c là 1 item
Môi item bao g m :ồm cả đình dạng *.xml và định
Tham chi u biên d ch tài nguyên thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng LayerDrawable
Tài nguyên hình nh cho phép qu n lý m ng các đ i ảnh được lưu trữ trong thư mục ảnh được lưu trữ trong thư mục ảnh được lưu trữ trong thư mục ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh đảnh được lưu trữ trong thư mục ư mục lưu trữ :ợc lưu trữ trong thư mục c vẽ theo tr ng thái c a đ i tạn định ủa Bitmap bao gồm : ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng
th hi n.ếu biên dịch tài nguyên thông qua đối ện
M t item bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
o Drawable – resources
o T p các tr ng thái có th có :ập các trạng thái có thể có : ạn định ể có nhiều thư mục drawable theo từ hạn định
Tham chi u biên d ch tài nguyên thong qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng StateListDrawable
Tài nguyên hình nh cho phép qu n lý các đ i tảnh được lưu trữ trong thư mục ảnh được lưu trữ trong thư mục ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh , m i đ i tảnh được lưu trữ trong thư mục ỗ trợ 3 định dạng ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh đảnh được lưu trữ trong thư mục ư mục lưu trữ :ợc lưu trữ trong thư mục c qui ư mục lưu trữ :ớc là 1 item.c là
m t item, hi n htij nh theo c p đ tộc tính Bitmap trong XML : ể có nhiều thư mục drawable theo từ hạn định ảnh được lưu trữ trong thư mục ất : bao gồm 2 cách thức : ộc tính Bitmap trong XML : ư mục lưu trữ :ơng ứng đã khaing ng đã khaiức : báo
M t item bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
Trang 6o Drawable – réources
o maxLevel
o minLevel
tham chi u biên d ch tài nguyên thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng LevelListDrawable
Tài nguyên hình nh cho phép th c hi n chuy n đ i ảnh được lưu trữ trong thư mục ực thi của Bitmap bao gồm : ện ể có nhiều thư mục drawable theo từ hạn định ổi (hi u ng “bi n bóng”)gi a hai đ i tện ức : ếu biên dịch tài nguyên thông qua đối ữ : ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh.ảnh được lưu trữ trong thư mục
M i item bao g m :ỗ trợ 3 định dạng ồm cả đình dạng *.xml và định
o Drawable – resources
o Id – resources id
o Top – integer
o Right – integer
o Bottom – integer
o Left – integer
Các phư mục lưu trữ :ơng ứng đã khaing th c x lý chính :ức : ử dụng như tài nguyên thông qua
o StartTransition
o reverserTransition
o resetTransition
Tài nguyên hình nh cho phép th c hi n l ng đ i ảnh được lưu trữ trong thư mục ực thi của Bitmap bao gồm : ện ồm cả đình dạng *.xml và định ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh theo m t v trí cho trảnh được lưu trữ trong thư mục ộc tính Bitmap trong XML : ịnh ư mục lưu trữ :ớc là 1 item.c
Các thu c tính bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
o Drawable – resources
o insetTop – integer
o insetRight – integer
o insetBottom – integer
o insetLeft – integer
tham chi u biên d ch tài nguyên thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ờng ng InsetDrawable
Trang 7 Clip :
Tài nguyên hình nh cho phép th c hi n c t m t đ i ảnh được lưu trữ trong thư mục ực thi của Bitmap bao gồm : ện ắt một đối ộc tính Bitmap trong XML : ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh theo thông s v trí cho trảnh được lưu trữ trong thư mục ối ịnh ư mục lưu trữ :ớc là 1 item.c, có th ể có nhiều thư mục drawable theo từ hạn định thay đ i thông s c t trong quá trình ho t đ ngổi ối ắt một đối ạn định ộc tính Bitmap trong XML :
Tham chi u biên d ch tài nguyên thoogn qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng ClipDrawable
Các thu c tính bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
o Drawable – resource
o clipOrientation – integer
o gravity
các phư mục lưu trữ :ơng ứng đã khaing th c x lý chính :ức : ử dụng như tài nguyên thông qua
o setLevel (min:0- max : 10 000)
o getLevel
Tài nguyên hình nh cho phép th c hi n phóng to ảnh được lưu trữ trong thư mục ực thi của Bitmap bao gồm : ện
ho c thu nh 1 đ i tặc thu nhỏ 1 đối tượng hình ảnh theo thông số tỉ lệ ỏ 1 đối tượng hình ảnh theo thông số tỉ lệ ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh theo thông s t l ảnh được lưu trữ trong thư mục ối ỉ sử dụng cho đối tượng Ring : ện cho trư mục lưu trữ :ớc là 1 item.c, c th thay đ i thông s t l t ng quá trìnhối ể có nhiều thư mục drawable theo từ hạn định ổi ối ỉ sử dụng cho đối tượng Ring : ện ỏ 1 đối tượng hình ảnh theo thông số tỉ lệ
ho t đ ng.ạn định ộc tính Bitmap trong XML :
Các thu c tính bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
o Drawable – resources
o scaleGravity – integer
o scaleWidth - %
o scaleHeight - %
tham chi u biên d ch tài nguyê thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng ScaleDrawble
Tài nguyên hình nh cho phép th c hi n t o đ i tảnh được lưu trữ trong thư mục ực thi của Bitmap bao gồm : ện ạn định ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng hình nh ( PNG) có kích thảnh được lưu trữ trong thư mục ư mục lưu trữ :ớc là 1 item.c co dãn theo t l đ i ỉ sử dụng cho đối tượng Ring : ện ối
tư mục lưu trữ :ợc lưu trữ trong thư mục ng th hi n.ể có nhiều thư mục drawable theo từ hạn định ện
Các thu c tính bao g m :ộc tính Bitmap trong XML : ồm cả đình dạng *.xml và định
o Src – resource
o Dithner – integer
Tham chi u biên d ch tài nguyên thông qua đ i tếu biên dịch tài nguyên thông qua đối ịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng NinePatchDrawable
Trang 82 Tài nguyên giao di n ện
2.1 Th m c l u tr -Truy xu t ư mục lưu trữ - Định dang – Truy xuất ục lưu trữ - Định dang – Truy xuất ư mục lưu trữ - Định dang – Truy xuất ữ - Định dang – Truy xuất ất
Th m c l u tr : ư mục lưu trữ : ục lưu trữ : ư mục lưu trữ : ữ :
Các tài nguyê giao di n đện ư mục lưu trữ :ợc lưu trữ trong thư mục ư mục lưu trữ :c l u tr trong th m c ữ : ư mục lưu trữ : ục lưu trữ : res/layout
Có th có nhi u th m c layout theo t h n đ nh khác ể có nhiều thư mục drawable theo từ hạn định ều thư mục drawable theo từ hạn định ư mục lưu trữ : ục lưu trữ : ừ hạn định ạn định ịnh nhau :
Truy xu t : bao g m 2 cách th c :ất : bao gồm 2 cách thức : ồm cả đình dạng *.xml và định ức :
<linearLayout
Xmlns:android=http://schemas.android.com/apk/res/andro id
Android:layout_width=”match_parent”
Android:layout_height=”match_parent”
Android:orientation=”vertical”>
<imageView
Android:id=”@+id/imgScale”
Trang 9Android:contentDrecription=”@null”/>
</linearLayout>
2.2 Các đ nh d ng Layout ịnh dang – Truy xuất ạng tài nguyên hình ảnh
Bao g m các l p k th a t ViewGroup :ồm cả đình dạng *.xml và định ớc là 1 item ếu biên dịch tài nguyên thông qua đối ừ hạn định ừ hạn định
S d ng trong các trử dụng như tài nguyên thông qua ục lưu trữ : ư mục lưu trữ :ờng ng h p xây d ng b c c t ọp xây dựng bố cục tổ ực thi của Bitmap bao gồm : ối ục lưu trữ : ổi
ch c hi n th m t đ i tức : ể có nhiều thư mục drawable theo từ hạn định ịnh ộc tính Bitmap trong XML : ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng duy nh t.ất : bao gồm 2 cách thức :
Đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng m c đ nh v trí top-left trên FrameLayout, ặc thu nhỏ 1 đối tượng hình ảnh theo thông số tỉ lệ ịnh ịnh
có th s d ng thu c tính Gravity đ thi t l p l i v ể có nhiều thư mục drawable theo từ hạn định ử dụng như tài nguyên thông qua ục lưu trữ : ộc tính Bitmap trong XML : ể có nhiều thư mục drawable theo từ hạn định ếu biên dịch tài nguyên thông qua đối ập các trạng thái có thể có : ạn định ịnh trí
Ví d khai báo :ục lưu trữ :
<FrameLayout
Xmlns:android=”htpp://schemas.android.com/apk/res/android” Android:layout_width=”match_parent”
Android:layout_height=”match_parent”>
</FrameLayout>
Các đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng k th a ph bi n :ếu biên dịch tài nguyên thông qua đối ừ hạn định ổi ếu biên dịch tài nguyên thông qua đối
o ViewFlipper : đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng cho phép th c hi n các ực thi của Bitmap bao gồm : ện
đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng ch đ phân trang, ch hi n th m t ở chế độ phân trang, chỉ hiện thị một ếu biên dịch tài nguyên thông qua đối ộc tính Bitmap trong XML : ỉ sử dụng cho đối tượng Ring : ện ịnh ộc tính Bitmap trong XML :
đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng 1 th i đi m.ở chế độ phân trang, chỉ hiện thị một ờng ể có nhiều thư mục drawable theo từ hạn định
Trang 10 Ví d khai báo :ục lưu trữ :
<ViewFlipper
Xmlns:android=http://schemas.android.com/apk/res/android
Android:layout_width=”match_parent”
Android:layout_height=”match_parent”>
</ViewFlipper>
Các phư mục lưu trữ :ơng ứng đã khaing th c s d ng :ức : ử dụng như tài nguyên thông qua ục lưu trữ :
o ScrollView : đ i tối ư mục lưu trữ :ợc lưu trữ trong thư mục ng cho phé th c hi n hi n ực thi của Bitmap bao gồm : ện ể có nhiều thư mục drawable theo từ hạn định
th các đ i tịnh ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng ch đ cu n màn hình, ch ở chế độ phân trang, chỉ hiện thị một ếu biên dịch tài nguyên thông qua đối ộc tính Bitmap trong XML : ộc tính Bitmap trong XML : ỉ sử dụng cho đối tượng Ring : cho phé ch a 1 đ i tức : ối ư mục lưu trữ :ợc lưu trữ trong thư mục ng 1 th i đi m.ở chế độ phân trang, chỉ hiện thị một ờng ể có nhiều thư mục drawable theo từ hạn định
Ví d khai báo :ục lưu trữ :
<ScrollView
Xmlns:android=http://schemas.android.com/apk/res/android Android:layout_width=”match_parent”
Android:layout_height=”match_parent”>
</ScrollView>
Các phư mục lưu trữ :ơng ứng đã khaing th c s d ng :ức : ử dụng như tài nguyên thông qua ục lưu trữ :