Dialog trong Android với Xamarin (Bài 5)

Dialog trong android với xamarin, trong bài học này chúng tôi sẽ trình bày cách tạo và sử dụng Alert Dialog, List Dialog và Toast trong Android sử dụng Xamarin.

Một hộp thoại (Dialog) là một cửa sổ nhỏ (Window) nhắc nhở người dùng để quyết định hoặc nhập thêm thông tin. Ví dụ hộp thoại xác nhận liệu người dùng có muốn thoát ứng dụng hay không?

Dialog trong android với xamarin – Alert Dialog

Alert Dialog là hộp thoại thông báo đến người dùng và yêu cầu xác nhận hoặc là đồng ý (Yes/OK) hoặc là không đồng ý (No).

dialog trong android với xamarin

Tạo Alert Dialog

AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle("Confirm");
b.SetMessage("Do you want to close?");
b.SetPositiveButton("Yes", (s,a) =>
{
   Finish();
});
b.SetNegativeButton("No", (s, a) => {
   b.Dispose();
});
AlertDialog ad = b.Create();
ad.Show();

Dialog trong android với xamarin – Single Choice Dialog

Người dùng chỉ được phép chọn 1 trong các lựa chọn khi hộp thoại xuất hiện. Hãy quan sát hình bên dưới để thấy rõ điều này.

Tạo Single Choice Dialog

string[] items = { "Hồ Chí Minh", "Hà Nội", "Đà Nẵng" };
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle("Thành phố");
b.SetItems(items, (sender, args) => {
 Toast.MakeText(this, items[args.Which], ToastLength.Short).Show();
}); 
b.Show();

Dialog trong android với xamarin – Single Choice Dialog sử dụng Radio button

Cũng tương tự như Single Choice Dialog, tuy nhiên trong hộp thoại này trước mỗi lựa chọn là Radio button.

Tạo Single Choice Dialog sử dụng Radio button

string[] data = { "Nam", "Nữ" };
int position = 0;
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.SetTitle("Giới tính");
b.SetSingleChoiceItems(data, 0, (s, a) =>
{
 position = a.Which;
});
b.SetPositiveButton("Chọn", (s, a) => {
Toast.MakeText(this, data[position], ToastLength.Short).Show();
});
b.Show();

Dialog trong android với xamarin – Multi Choice Dialog

Hộp thoại cho phép người dùng chọn nhiều. Trong hộp thoại này sẽ xuất hiện Check box, và với mỗi check box là một lựa chọn.

Dialog trong android với xamarin – Toast

Hộp thoại này sẽ xuất hiện trong một khoảng thời gian nhất định và sau đó tự biến mất. Ví dụ khi chúng ta thiết lập báo thức, ứng dụng sẽ hiển thị thông báo đến người dùng số giờ còn lại. Thông báo này sẽ tự động biến mất mà không cần sự tương tác của người dùng như những dạng trên.

Cú pháp tạo Toast trong Android với Xamarin

Toast.MakeText(this, "Nội dung hiển thị", Time).Show();

Trong đó time hoặc là ToastLength.Short hoặc là ToastLength.Long

Ví dụ sử dụng Toast trong Android với Xamarin

Toast.MakeText(this, "Vui lòng nhập tên đăng nhập", ToastLength.Short).Show();

Dialog trong android với xamarin – Bài tập thự hành

Người dùng sau khi nhập tên, tuổi, chọn giới tính, sở thích và chọn “CREATE”, ứng dụng sẽ hiên thị thông tin ra màn hình sử dụng TextView

Khi chọn “CHOOSE GENDER”, kết quả sau khi chọn sẽ hiển thị tại “Gender”

Khi chọn “CHOOSE HOBBY”, kết quả sau khi chọn sẽ hiển thị tại “Hobby”

Lưu ý:

  1. Họ tên và tuổi yêu cầu người dùng phải nhập. Trường hợp người dùng không nhập, hiển thị thông báo phù hợp và đặt con trỏ vào ô chưa được nhập.
  2. Tuổi chỉ được nhập số.
  3. Khi người dùng chọn “CLOSE”, ứng dụng sẽ hiển thị hộp thoại xác nhận. Trường hợp người dùng chọn “OK”, ứng dụng sẽ bị đóng. Nếu chọn “CANCEL”, hộp thoại xác nhận sẽ biến mất.

Trả lời