Wednesday, October 4, 2017

Dialog

Dialog view có thể dùng để để thông báo cho người dùng hoặc lấy xác nhận từ người dùng.

AlertDialog.Builder dialog=new AlertDialog.Builder(second.this);       
dialog.setIcon(R.drawable.cuoi);
dialog.setTitle("Hello world!");
dialog.setMessage("Hi,"+"\n"+"Đây là Dialog view.");
dialog.setNegativeButton("Cancel", new OnClickListener(){
     @Override
public void onClick(DialogInterface arg0, int arg1) {
             
          }
     });
dialog.setPositiveButton("OK",new OnClickListener() {             
              @Override
public void onClick(DialogInterface arg0, int arg1) {
                   // TODO Auto-generated method stub
                  
     }
     });
dialog.show();
Nếu không đặt thêm lệnh trong hai nút OK, Cancel thì khi bạn ấn nút nào Dialog đều biến mất.
Giả sử bạn cần xóa dữ liệu, Dialog sẽ rất tiện để hỏi lại người dùng có cần xóa thật không?
Lúc đó có thể bỏ bớt phần setMessage đi, cho câu hỏi xác nhận lên đầu dialog.setTitle("Xóa dữ liệu");
Trong nút OK bạn thêm vào các lệnh xóa.

Nếu trong phần khai báo class của file AndroidManifest, bạn để màn hình full screen.
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
Thì dù bạn có đổ nền trắng cho Layout, dialog trông vẫn có nền đen.

Trong trường hợp này, để Dialog vẫn trắng và làm mất icon đầu ứng dụng, bạn dùng dòng sau bên trên setContentView.
requestWindowFeature(Window.FEATURE_NO_TITLE);
Nếu muốn Dialog có thêm nút nữa, bạn thêm vào các dòng.
dialog.setNeutralButton("Nút 3", new OnClickListener() {
@Override
public void onClick(DialogInterface arg0, int arg1) {
// TODO Auto-generated method stub
//Do something
}
                                                 
})


No comments:

Post a Comment