Hiển thị các bài đăng có nhãn Android. Hiển thị tất cả bài đăng
Hiển thị các bài đăng có nhãn Android. Hiển thị tất cả bài đăng

Thứ Ba, 1 tháng 4, 2014

[Android] Chương 1.9 : Thông báo Toast.

TỔNG QUAN

Là một dạng popup message hiển thị trên màn hình.
Tùy thuộc vào message mà popup toast sẽ có kích cỡ tương ứng khi hiển thị.
Toast    tự động hiển thị trong thời gian được cho trong duration.
Toast  trong lúc hiển thị, không ảnh hưởng đến activity khác và không bắt các sự kiện của người dùng.

CÁCH SỬ DỤNG
Để hiển thị một đoạn Toast, đơn giản như sau:
Context context = getApplicationContext();
CharSequence text = "Hello toast!";
int duration = Toast.LENGTH_SHORT;

Toast toast = Toast.makeText(context, text, duration);
toast
.show();
Trong đó:

context: application context
message: Nội dung message
duration: Thời gian hiển thị
.show():  Hàm hiển thị Toast

Toast  có thể được tùy biến giao diện:

LayoutInflater inflater = getLayoutInflater();

View layout = inflater.inflate(R.layout.custom_toast,

                               
(ViewGroup) findViewById(R.id.toast_layout_root));



TextView text = (TextView) layout.findViewById(R.id.text);

text
.setText("This is a custom toast");



Toast toast = new Toast(getApplicationContext());

toast
.setGravity(Gravity.CENTER_VERTICAL, 0, 0);

toast
.setDuration(Toast.LENGTH_LONG);

toast
.setView(layout);

toast
.show();

[Android] Chương 1.8 :Tạo Dialog các dạng :AlertDialog (list, radiobutton, checkbox). Date, time Dialog, progress dialog


TỔNG QUAN
Dialog là một cửa sổ nhỏ hiển thị trên activity hiện hành, dùng để thông báo hay cung cấp một vài chức năng nhỏ đến người sử  dụng.
Các loại Dialog:

 AlertDialog: hiển thị thông báo đến người dùng, có chứa một số đối tượng  điều  khiển  như:  Button, CheckBox, Radio Button, v.v…

ProgressDialog: hiển thị tiến độ một công việc nào đó.

DatePickerDialog: cho phép người dùng chọn lịch ngày.

TimePickerDialog: cho phép người dùng chọn giờ

Để tạo Dialog, Android hỗ trợ 2 cách sau:
Tạo trong sự kiện onCreateDialog(int).
Tạo khi cần hiển thị Dialog. Android khuyến khích sử dụng sự kiện onCreate(int).


 ALERTDIALOG

Giao diện hiển thị của nó gồm nhiều thành phần như sau:

Tiêu đề. 
Thông điệp thông báo. 
Buttons.
Danh sách chứa các CheckBox hay Radio Button.

Để khởi tạo AlertDialog, ta phải sử dụng lớp con là  AlertDialog.Builder:
 AlertDialog.Builder build = new AlertDialog.Builder(context)
Sau khi build xong, thì gọi create để tạo object của AlertDialog từ builder đó:
  AlertDialog ad = build.create()
Mục đích
Phương thức/Đối tượng
Tạo đốitượng để xây dựng AlertDialog
AlertDialog.Builder builder = new AlertDialog.Builder(this);
Thiết lập tiêu đề
setTitle(CharSequence title) hoặc setTitle(int titleId)

Thiết lập thông điệp
setMessage(CharSequence message) hoặc setMessage(int
messageId)

Thiết lập icon
setIcon(Drawable icon) hoặc setIcon(int iconId)

Thiết lập danh sách
setItems(CharSequence[] items,
DialogInterface.OnClickListener listener) hoặc setItem(int
itemsId, DialogInterface.OnClickListener listener)

Thiết lập danh sách chứa Radio Buttons
setSingleChoiceItems(CharSequence[] items, int
checkedItem, DialogInterface.OnClickListener listener) hoặc
setSingleChoiceItems(int itemsId, int checkedItem,DialogInterface.OnClickListener listener)

Thiết lập danh sách chứa CheckBox
setMultiChoiceItems(CharSequence[] items, boolean[]
checkedItems, DialogInterface.OnClickListener listener) hoặc
setMultiChoiceItems(int itemsId, boolean checkedItems,DialogInterface.OnClickListener listener)

Thiết lập Positive Button
setPositiveButton(CharSequence text,
DialogInterface.OnClickListener listener) hoặc
setPositiveButton(int textId, DialogInterface.OnClickListenerlistener)

Thiết lập Negative Button
setNegativeButton(CharSequence text,
DialogInterface.OnClickListener listener) hoặc
setNegativeButton (int textId,DialogInterface.OnClickListener listener)
Thiết lập Neutral Button
setNeutralButton(CharSequence text,
DialogInterface.OnClickListener listener) hoặc
setNeutralButton (int textId, DialogInterface.OnClickListenerlistener)





PROGRESSDIALOG

ProgressDialog là loại Dialog dùng để hiển thị tiến độ thực hiện một công việc nào đó . Dạng Dialog này được tạo ra từ lớp cha là AlertDialog. Ngoài những tính chất riêng, nó cũng kế thừa nhiều thuộc tính từ lớp cha AlertDialog như : Tiêu đề, Thông điệp, Buttons.
Có 2 dạng ProgressDialog:

Dạng Spin


Dạng Horizontal

Khởi tạo ProgressDialog như sau:
ProgressDialogmProgressDialog =new ProgressDialog(this);
Các phương thức dùng để thiết lập ProgressDialog:
setProgressStyle():ProgressDialog.STYLE_SPINNER/ProgressDialog.STYLE_HORIZONTAL.
setTitle(): là phương thức dùng để thiết lập tiêu đề cho ProgressDialog.
setMessage(): là phương thức dùng để thiết lập thông điệp cho ProgressDilog.
Riêng đối với Horizontal ProgressDialog, chúng ta phải thiết lập thêm chiều dài thanhngang trong Dialog thông qua phương thức setMax()

DATEPICKERDIALOG
DatePickerDialog dùng để chọn ngày tháng. 


Phương thức khởi tạo DatePickerDialog như sau:
DatePickerDialog(Contextcontext,DatePickerDialog.OnDateSetListenercallback , intyear,intmonthOfYear, intdayOfMonth)
Trong đó:
context: là ngữ cảnh hiển thị Dialog. Trong trườnghợp này là Activity hiện hành.
callback: dùng để thiết lập sự kiện khi người dùngthay đổi ngày trên Dialog.
year: thiết lập năm trên Dialog.
monthOfYear: thiết lập tháng trên Dialog.
dayOfMonth: thiết lập ngày trên Dialog.


TIMEPICKERDIALOG
TimePickerDialog dùng để chọn ngày tháng.
Phương thức khởi tạo DatePickerDialog như sau:
TimePickerDialog(Contextcontext,DatePickerDialog.OnDateSetListenercallback , inthourOfDay,intminute, booleanis24HourView)

Trong đó:
context: là ngữ cảnh hiển thị Dialog. Trong trường hợp nàylà Activity hiện hành.
callback: dùng để thiết lập sự kiện khi người dùng thay đổigiờ phút trên Dialog.
hourOfDay: thiết lập giờ trên Dialog.
minute: thiết lập phút trên Dialog.
is24HourView: chỉ định giờ hiển thị theo dạng 24h hay 12h.

CUSTOM DIALOG
Là dạng Dialog có giao diện theo thiết kế của người lập
trình,có thể bao gồm cả ImageView, TextView, EditText, v.v…


Các phương thức để thiết lập Custom Dialog:
dlg = new Dialog(context): cấp phát bộ nhớ cho Dialog.
dlg.setContentView(R.layout.IdDialog): chỉ định giao diện cho Dialog.
dlg.setTitle(): thiết lập tiêu đề cho Dialog
XỬ LÝ SỰ KIỆN TRÊN DIALOG
Các Button, Item trên Dialog cũng được xử lýnhư các Button, Item bình thường.

[Android] Chương 1.7 : Phối hợp giữa layout và java. Bắt sự kiện.


Các view trong layout của ứng dụng được thêm vào tự động trong R.java  chứa trong thư mục Gen. Mỗi khi sử dụng một đối tượng trên layout, đối tượng sẽ được gọi thông qua lớp R.
Như ví dụ từ phần trước:
Mã sử dụng layout:
super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

Mã sử dụng button
Button btn = (Button)findViewById(R.id.mybutton);

Gọi và sử dụng các control cơ bản khác giống như ví dụ button.
BẮT SỰ KIỆN

Ví dụ muốn bắt sự kiện click cho một button control ta sử dụng với cú pháp:
btnList.setOnClickListener(new View.OnClickListener() {
...
...
});


Ngoài ra còn các sự kiện:



[Android] Chương 1.6 :các control cơ bản TextView, EditText, Button, CheckBox, RadioButton, ImageView.



Trên giao diện của ứng dụng Android có thể bao gồm các đối tượng điều khiển (controls) khác nhau để làm nhiệm vụ chuyển tải thông tin hoặc tiếp nhận thông tin từ người dùng cuối. Cũng như các ứng dụng thường thấy trên Windows hay Mac, các thành phần giao diện này bao gồm:



   TextView   – Là một đối tượng để hiển thị một dòng chữ, một thông báo, một đề nghị,… dưới dạng văn bản. Nội dung văn bản của đối tượng này thường do người lập trình ứng dụng Android thiết lập trước.
    EditText     – Là một loại thành phần trên giao diện mà người dùng cuối có thể nhập dữ liệu ở dạng văn bản vào.
     Button     – Đối tượng này thường dùng để đại diện cho 1 chức năng nào đó. Khi người dùng nhấn lên nút lệnh chức năng đó sẽ được gọi thực thi. Nếu lập trình viên Android thiết lập rằng ứng với sự kiện nút lệnh đó được nhấn chức năng kia sẽ thực hiện
 ImageView  – Là đối tượng dùng để hiển thị hình ảnh do lập trình viên Android chỉ định.
  CheckBox  – Đối tượng thường dùng để thể hiện trạng thái bật/tắt. Lập trình viên Android thường sử dụng checkbox để cho phép người dùng check (chọn) làm gì đó hay không.
RadioButton – Là loại đối tượng cho phép biểu thị 1 trong 2 trạng thái là đang được chọn hoặc đang không được chọn. Loại đối tượng này thường được sử dụng theo nhóm từ 2 RadioButton trở lên để hỗ trợ việc chỉ được chọn 1 trong 1 tập hợp các RadioButton của cùng 1 nhóm.
 RadioGroup – Là đối tượng quản lý nhiều RadioButton, cho phép chỉ chọn 1 RadioButton  trong nhóm. Lập trình viên Android thường sử dụng loại điều khiến này để cho người dùng chọn một trong số các tùy chọn xác định nào đó.
ToggleButton – Là loại nút thể hiện 2 trạng thái là ấn hoặc không ấn (on/off).
 ProgressBar – Là đối tượng dùng để biểu diễn tiến độ của một công việc nào đó (Tính theo tỉ lệ %).
Để hiểu rõ hơn về các control mời các bạn xem video minh họa.

 Trên chỉ là một số điều khiển được sử dụng phổ biến trong tạo giao diện người dùng Android. Android cũng hỗ trợ một vài điều khiển nâng cao hơn như DateTimePicker, hộp nhập AutoComplete,…