Android: create a popup that has multiple selection options

Cornomaniac picture Cornomaniac · May 6, 2013 · Viewed 95k times · Source

I've been searching around trying to figure out how to create a popup or a dialog that has 4 options to choose from.

I see this picture on the Android developer site:

enter image description here

Does anyone know how to code up something like the one on the right? I don't need any icons next to my text, I just need to be able to select from 4 options.

Answer

zbr picture zbr · May 6, 2013

You can create a String array with the options you want to show there and then pass the array to an AlertDialog.Builder with the method setItems(CharSequence[], DialogInterface.OnClickListener).

An example:

String[] colors = {"red", "green", "blue", "black"};

AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Pick a color");
builder.setItems(colors, new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        // the user clicked on colors[which]
    }
});
builder.show();

The output (on Android 4.0.3):

Output

(Background map not included. ;))