private void moveDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Move to.."); final Spinner spinner = new Spinner(this); ArrayAdapter<String> adapter = new ArrayAdapter<>( this, android.R.layout.simple_spinner_dropdown_item, data.getListAlbumNames()); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener( new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0, View arg1, int position, long arg3) { albumChoice = spinner.getSelectedItem().toString(); } @Override public void onNothingSelected(AdapterView<?> arg0) { // do nothing } }); builder.setView(spinner); builder.setPositiveButton( "Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); albumChoice = null; } }); builder.setNegativeButton( "Move", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { data.moveTrack(selected, albumChoice); populateListView(); Toast.makeText( ActivityTracksListView.this, "Track moved to " + albumChoice, Toast.LENGTH_SHORT) .show(); } }); builder.show(); }