I need to show a little text message to the users that clicks a button on my Android app, on IOS I just had to create an AlertView that it's simple to use but with Android i'm struggling because the solution seems x10 times harder. I saw that I need to use a DialogFragment but I can't understand how to make it work, can someone explain? Also, is my solution right or there is something easier to show a simple text message to users?
            Asked
            
        
        
            Active
            
        
            Viewed 3.2e+01k times
        
    3 Answers
487
            You would simply need to do this in your onClick:
AlertDialog alertDialog = new AlertDialog.Builder(MainActivity.this).create();
alertDialog.setTitle("Alert");
alertDialog.setMessage("Alert message to be shown");
alertDialog.setButton(AlertDialog.BUTTON_NEUTRAL, "OK",
    new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
            dialog.dismiss();
        }
    });
alertDialog.show();
I don't know from where you saw that you need DialogFragment for simply showing an alert.
 
    
    
        Halo
        
- 1,730
- 1
- 8
- 31
 
    
    
        MysticMagicϡ
        
- 28,593
- 16
- 73
- 124
- 
                    12FYI - The first example at Google's Android Dev site shows how to do this using a Fragment : http://developer.android.com/guide/topics/ui/dialogs.html I think that is possibly what leads a dev to think he needs to use a fragment for a basic AlertDialog. I searched today and thought maybe so. – raddevus Feb 22 '16 at 21:14
- 
                    5Better to set properties on the builder rather than the alertDialog instance! – alexbirkett Oct 25 '17 at 10:14
30
            
            
        No my friend its very simple, try using this:
AlertDialog alertDialog = new AlertDialog.Builder(AlertDialogActivity.this).create();
alertDialog.setTitle("Alert Dialog");
alertDialog.setMessage("Welcome to dear user.");
alertDialog.setIcon(R.drawable.welcome);
alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "OK", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
        Toast.makeText(getApplicationContext(), "You clicked on OK", Toast.LENGTH_SHORT).show();
    }
});
alertDialog.show();
This tutorial shows how you can create custom dialog using xml and then show them as an alert dialog.
 
    
    
        Sash Sinha
        
- 18,743
- 3
- 23
- 40
 
    
    
        Sagar Pilkhwal
        
- 3,998
- 2
- 25
- 77
25
            
            
        You can easily make your own 'AlertView' and use it everywhere.
alertView("You really want this?");
Implement it once:
private void alertView( String message ) {
 AlertDialog.Builder dialog = new AlertDialog.Builder(context);
 dialog.setTitle( "Hello" )
       .setIcon(R.drawable.ic_launcher)
       .setMessage(message)
//     .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
//      public void onClick(DialogInterface dialoginterface, int i) {
//          dialoginterface.cancel();   
//          }})
      .setPositiveButton("Ok", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialoginterface, int i) {   
        }               
        }).show();
 }
 
    
    
        swapnil gandhi
        
- 816
- 1
- 20
- 38
 
    
    
        greenapps
        
- 11,154
- 2
- 16
- 19
- 
                    Thank you for this, but how do I get `context` ? I am using `androidx.appcompat.app.AlertDialog` – Jeson Martajaya Mar 08 '23 at 18:20
