How do I create an Android Spinner as a popup?

后端 未结 12 1759
梦如初夏
梦如初夏 2020-12-02 09:20

I want to bring up a spinner dialog when the user taps a menu item to allow the user to select an item.

Do I need a separate dialog for this or can I use Spinner dir

12条回答
  •  醉梦人生
    2020-12-02 09:37

    Here is an Spinner subclass which overrides performClick() to show a dialog instead of a dropdown. No XML required. Give it a try, let me know if it works for you.

    public class DialogSpinner extends Spinner {
        public DialogSpinner(Context context) {
            super(context);
        }
    
        @Override 
        public boolean performClick() {
            new AlertDialog.Builder(getContext()).setAdapter((ListAdapter) getAdapter(), 
                new DialogInterface.OnClickListener() {
                    @Override public void onClick(DialogInterface dialog, int which) {
                        setSelection(which);
                        dialog.dismiss();
                    }
                }).create().show();
            return true;
        }
    }
    

    For more information read this article: How To Make Android Spinner Options Popup In A Dialog

提交回复
热议问题