android警报对话框的自定义适配器

android警报对话框的自定义适配器,android,dialog,android-alertdialog,Android,Dialog,Android Alertdialog,我想制作一个如下所示的警报对话框 这是我的密码 final item[] items = { new item("Email", android.R.drawable.ic_menu_add), new item("Facebook", android.R.drawable.ic_menu_delete), }; ListAdapter adapter = new ArrayAdapter<item>

我想制作一个如下所示的警报对话框

这是我的密码

    final item[] items = {

            new item("Email", android.R.drawable.ic_menu_add),
            new item("Facebook", android.R.drawable.ic_menu_delete),

    };



    ListAdapter adapter = new ArrayAdapter<item>(
            this,
            android.R.layout.select_dialog_item,
            android.R.id.text1,
            items){

        @NonNull
        @Override
        public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent)
        {
            View v = super.getView(position, convertView, parent);
            TextView tv = (TextView)v.findViewById(android.R.id.text1);



            tv.setCompoundDrawablesWithIntrinsicBounds(items[position].icon, 0, 0, 0);

            int dp5 = (int) (5 * getResources().getDisplayMetrics().density + 0.5f);
            tv.setCompoundDrawablePadding(dp5);

            return v;
        }
    };


    new AlertDialog.Builder(this)
            .setTitle("Share Appliction")
            .setNegativeButton("asddasd", new DialogInterface.OnClickListener()
            {
                @Override
                public void onClick(DialogInterface dialog, int which)
                {

                }
            })
            .setAdapter(adapter, new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int item) {
                    Log.d("Fsdf","Sfss");
                }
            }).show();
{

}

现在我不知道如何在每次使用异步任务从包管理器获取项时将其放入项数组中

试试我的这个答案,我想它会对你有很大的帮助…如果你有任何问题的话 有问题的话请告诉我


ArrayAdapter(这个,android.R.layout.select_dialog_item,android.R.id.text1,items)
您可以在构造函数中初始化它们,并在
getView
中对它们进行充气。您能详细说明吗
public class item
public final String text;
public final int icon;

public item(String text, Integer icon) {
    this.text = text;
    this.icon = icon;
}
@Override
public String toString() {
    return text;
}