• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

[Basic4Android] Bài 6 - Resource, tùy biến giao diện control

Lập trình cho Android Phone

Điều hành viên: tummosoft

Hình đại diện của người dùng
tummosoft
Điều hành viên
Điều hành viên
Bài viết: 332
Ngày tham gia: T.Hai 19/05/2014 2:23 pm
Has thanked: 7 time
Been thanked: 59 time
Liên hệ:

[Basic4Android] Bài 6 - Resource, tùy biến giao diện control

Gửi bàigửi bởi tummosoft » T.Ba 22/07/2014 8:04 am

Hình ảnh

Khi có nhu cầu tùy biến giao diện control khác với mặc định, thông qua hai phần tử BitmapDrawable và StateListDrawable, chúng ta có thể sáng tạo ra một giao diên của riêng mình.

* Sử dụng Resources:

1- Để import các resources vào dự án. Tại góc phải bên dưới màn hinh, ta chọn tab "file", sau đó tiến hành add các file ảnh vào projetc.

2- Kéo thả các control cần tạo giao diện từ công cụ Designer

3- Tiến hành khai báo các control sẽ sử dụng trong biến toàn cục

  1. Sub Globals
  2.     Dim txtSearch As EditText
  3.     Dim btSearch As Button
  4.     Dim cd As ColorDrawable
  5.     Dim checkME As CheckBox
  6. End Sub


4- Khai báo các biến trung gian BitmapDrawable dùng để load image

  1. Dim checked, unchecked, buttonclick, mytextbox As BitmapDrawable


5- Gọi hình ảnh từ resources

  1. mytextbox.Initialize (LoadBitmap(File.DirAssets, "textbox.png"))


* Lưu ý: File.DirAssets là khu vực resources chứa các file sẽ được đóng gói kèm theo ứng dụng apk.
File.DirAssets sẽ trả về đường dẫn chứa file khi được gọi.

6- Khai báo một biến StateListDrawable để lấy và gán giá trị các trạng thái của control
Tùy theo control được tùy biến, bạn lựa chọn một events phù hợp từ StateListDrawable như: State_Unchecked, sld.State_Pressed...



7- Gán trạng thái phù hợp cho mỗi hình ảnh
Ví dụ: ta có hai hình ảnh checked, unchecked sẵn dành cho việc tùy biến một checkbox.

  1. sld.AddState(sld.State_Checked, checked)
  2. sld.AddState(sld.State_Unchecked, unchecked)


8- Cuối cùng sử dung biến StateListDrawable vừa thao tác.



Ex: Code hoàn chỉnh

  1. Sub Activity_Create(FirstTime As Boolean)
  2.     'Do not forget to load the layout file created with the visual designer. For example:
  3.     Activity.LoadLayout("layout_main")
  4.     Dim checked, unchecked, buttonclick, mytextbox As BitmapDrawable
  5.    
  6.     'checked.Initialize (LoadBitmap(File.DirAssets, "checked.png"))
  7.     'unchecked.Initialize (LoadBitmap(File.DirAssets, "unchecked.png"))
  8.     buttonclick.Initialize (LoadBitmap(File.DirAssets, "button.png"))
  9.     mytextbox.Initialize (LoadBitmap(File.DirAssets, "textbox.png"))
  10.  
  11.     Dim sld As StateListDrawable
  12.     'initialize statelistdrawable
  13.     sld.Initialize
  14.     'add states
  15.    'sld.AddState(sld.State_Checked, checked)
  16.    'sld.AddState(sld.State_Unchecked, unchecked)
  17.     sld.AddState(sld.State_Pressed, buttonclick)   
  18.    
  19.     'set background as state
  20.     'checkME.s
  21.    'checkME.Background = sld
  22.    
  23.     'cd.Initialize (Colors.Green , 10dip )
  24.     'btSearch.Initialize("btSearch")
  25.     btSearch.Background = buttonclick
  26.     txtSearch.Background=mytextbox
  27.     txtSearch.TextColor=Colors.Black
  28. End Sub


:) Tummo Software :D
http://tummosoft.com

Hình đại diện của người dùng
tummosoft
Điều hành viên
Điều hành viên
Bài viết: 332
Ngày tham gia: T.Hai 19/05/2014 2:23 pm
Has thanked: 7 time
Been thanked: 59 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi tummosoft » T.Ba 22/07/2014 8:38 am

Một số App có giao diện đẹp được tùy biến bằng Basic4Android

Phần mềm dự báo thời tiết: AmberHome Weather
Hình ảnh

Phần mềm tính lương My Salary
Hình ảnh

Phần mềm Stay Alive
Hình ảnh
:) Tummo Software :D
http://tummosoft.com

Hình đại diện của người dùng
tummosoft
Điều hành viên
Điều hành viên
Bài viết: 332
Ngày tham gia: T.Hai 19/05/2014 2:23 pm
Has thanked: 7 time
Been thanked: 59 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi tummosoft » T.Ba 22/07/2014 8:46 am

:) Tummo Software :D
http://tummosoft.com

Hình đại diện của người dùng
tungblt
Điều hành viên
Điều hành viên
Bài viết: 549
Ngày tham gia: T.Hai 22/12/2008 5:22 pm
Đến từ: quy nhơn
Has thanked: 6 time
Been thanked: 76 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi tungblt » T.Hai 28/07/2014 1:50 pm

Sử dụng UI KIT như thế nào ??
love

Hình đại diện của người dùng
tummosoft
Điều hành viên
Điều hành viên
Bài viết: 332
Ngày tham gia: T.Hai 19/05/2014 2:23 pm
Has thanked: 7 time
Been thanked: 59 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi tummosoft » T.Ba 29/07/2014 7:41 am

Bạn vào Photoshop, rồi tách mỗi hình các control ra 1 file png không nền.

Sau đó thì add file hình đó vào project và áp dụng
:) Tummo Software :D
http://tummosoft.com

Hình đại diện của người dùng
gtdcomputer
Thành viên danh dự
Thành viên danh dự
Bài viết: 1296
Ngày tham gia: T.Sáu 18/07/2008 12:08 pm
Đến từ: Kiên Giang
Has thanked: 8 time
Been thanked: 117 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi gtdcomputer » T.Sáu 05/09/2014 5:00 pm

Thím hướng dẫn khó hỉu voãi, Bác cố tình chia ra thành từng đoạn để hướng dẫn, nhưng xong bài hướng dẫn lại ko gôm nó lại, hay ít ra gửi bài mẫu để xem, mình hiểu từng đoạn, nhưng éo bik nó ghép lại sẽ trông thế nào. Hay tại mình ngu voãi nhễ :-?
Con người không quan tâm đến sự thật. Họ tin cái họ muốn, và về sau, cái đó sẽ trở thành sự thật

Hình đại diện của người dùng
tummosoft
Điều hành viên
Điều hành viên
Bài viết: 332
Ngày tham gia: T.Hai 19/05/2014 2:23 pm
Has thanked: 7 time
Been thanked: 59 time
Liên hệ:

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện con

Gửi bàigửi bởi tummosoft » T.Bảy 06/09/2014 8:49 am

Đoạn code full lúc nào cũng ở dưới cùng đấy bạn.

Code mẫu đính kèm
Tập tin đính kèm
togglestate.zip
Ví dụ về sử dụng StateListDrawable
(345.74 KiB) Đã tải 222 lần
:) Tummo Software :D
http://tummosoft.com

tigerhn
Bài viết: 9
Ngày tham gia: T.Sáu 25/09/2009 1:52 pm

Re: [Basic4Android] Bài 6 - Resource, tùy biến giao diện control

Gửi bàigửi bởi tigerhn » T.Ba 19/06/2018 3:55 pm

Hi tummosoft!
Minh có góp ý và câu hỏi, nhờ bác trả lời giúp
1. Để mọi người dễ tìm các bài liên quan đến 1 chủ đề, bác chèn giúp các đường link vào bài 1, VD:
[Basic4Android] Bài 1- Giới thiệu về IDE Android
[Basic4Android] Bài 2- Công cụ Designer và các control
[Basic4Android] Bài 3- Cài đặt IDE với điện thoại qua USB
.....
2. Không download được một số ví dụ trên forum B4X. Mình đã reg acount trong https://www.b4x.com/android/forum/ nhưng khi download thì toàn thấy thông báo:
"You do not have permission to access this page or file.
If you are trying to download a file and have purchased B4A then please contact support@basic4ppc.com and mention your user name."


Quay về “Android”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.1 khách