title: how to add custom ListView in alert dialog android
body: <p>I have one scenario in which,when I click on <code>Button</code> I want the <code>AlertDialog</code> to popup. <code>AlertDialog</code> is a custom alert dialog as it has custom <code>Listview</code>.</p>
  
  <p>I am using the following code to assign the <code>AlertDialog</code> <code>OnClick</code> of button</p>
  
  <pre><code> top.setOnClickListener(new OnClickListener() {
   Context mcontext;
   @Override
   public void onClick(View arg0) {
   // TODO Auto-generated method stub
   LayoutInflater li = LayoutInflater.from(getActivity());
   View view= li.inflate(R.layout.topingslist, null);
  
   AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity());
   alertDialogBuilder.setView(view);
   ListView lv2 = (ListView) getActivity().findViewById(R.id.toplist);
   ArrayList&lt;SearchResultsToping&gt; results1 = new ArrayList&lt;SearchResultsToping&gt;();
   SearchResultsToping sr1;                                               
   sr1 = new SearchResultsToping();
   sr1.setToppingname("cheese");
   results1.add(sr1);
   MyCustomBaseAdapterTop arrayAdapter=new MyCustomBaseAdapterTop(getActivity(), results1);
   lv2.setAdapter(arrayAdapter);
   lv2.setOnItemSelectedListener(new OnItemSelectedListener() {
  
      @Override
      public void onItemSelected(AdapterView&lt;?&gt; arg0, View arg1, int arg2,long arg3) {
      // TODO Auto-generated method stub
      }
  
      @Override
      public void onNothingSelected(AdapterView&lt;?&gt; arg0) {
      // TODO Auto-generated method stub
  
      }
  
      });
  
     alertDialogBuilder
          .setCancelable(false)
          .setPositiveButton("OK",new DialogInterface.OnClickListener() 
                    public void onClick(DialogInterface dialog,int id) {
                        })
          .setNegativeButton("Cancel",  new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog,int id) {
                      dialog.cancel()
                 }
              });
  
          // create alert dialog
          AlertDialog alertDialog = alertDialogBuilder.create();
          // show it
          alertDialog.show();
      }
    });
  </code></pre>
  
  <p>This is my customBaseadapter to customlistview</p>
  
  <pre><code>public class MyCustomBaseAdapterTop extends BaseAdapter {
      private static ArrayList&lt;SearchResultsToping&gt; searchArrayListtop;
      private LayoutInflater mInflater;
       Context ctx=null;
  
       public MyCustomBaseAdapterTop(Activity activty, ArrayList&lt;SearchResultsToping&gt; results1) {
            searchArrayListtop = results1;
  
            this.ctx=activty;
            mInflater = activty.getLayoutInflater();  
  
      }
  
  
      @Override
      public int getCount() {
          // TODO Auto-generated method stub
      //  return 0;
          return searchArrayListtop.size();
      }
  
      @Override
      public Object getItem(int arg0) {
          // TODO Auto-generated method stub
          return null;
  
          //return searchArrayListtop.get(arg0);
      }
  
      @Override
      public long getItemId(int arg0) {
          // TODO Auto-generated method stub
          return 0;
      }
  
      @Override
      public View getView(int arg0, View convertView, ViewGroup arg2) {
          // TODO Auto-generated method stub
  
          final ViewHolder holder;
          if (convertView == null) {
  
              Log.d("base", "listbase");
         convertView = mInflater.inflate(R.layout.each_toping, null);
         holder = new ViewHolder();
  
  
        holder.txttopname = (TextView) convertView.findViewById(R.id.topname);
  
  
         convertView.setTag(holder);
        } else {
         holder = (ViewHolder) convertView.getTag();
        }
  
        holder.txttopname.setText(searchArrayListtop.get(arg0).getToppingname());
        return convertView;
  
  }
  static class ViewHolder {
          TextView txttopname;
          }
  
  }
  </code></pre>
  
  <p>This is topinglist.xml file</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:orientation="vertical" &gt;
        &lt;ListView 
              android:id="@+id/toplist" 
              android:layout_height="wrap_content"
              android:layout_width="fill_parent"
              android:cacheColorHint="#0000"
              android:divider="@android:color/transparent"
              android:dividerHeight="0dp" /&gt;        
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>The line on which I am setting the <code>Adapter</code> to <code>Listview</code>                                      <code>lv2.setAdapter(arrayAdapter);</code>
   is giving me <code>NullPointerException</code>
  please help me to achieve this.</p>