弹出对话框AlertDialog.Builder使用笔记

因项目需要,需要一个弹出对话框,但对话框的布局和界面不是默认的,而是需要自己自定义的界面


(一)先实例化一个Builder对象

AlertDialog.Builder addDialog = new AlertDialog.Builder(Context);


参数:Context是上下文


(二)自定义布局add_address_dialog.xml,这个布局就是你自己弹出对话框的布局,我这里就要我的


    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff"
     >
    
            android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="26sp"
        android:text="新增地址"
        />
    
                android:id="@+id/titleLine"
          android:layout_below="@+id/title"
          android:layout_width="match_parent"
           /> 
           
      
                android:id="@+id/contentTitle"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_centerHorizontal="true"
          android:layout_below="@+id/titleLine"
          android:textSize="20sp"
          android:text="当前位置"
          />
                 android:id="@+id/contentShow"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:layout_centerHorizontal="true"
           android:layout_below="@+id/contentTitle"
           android:layout_marginTop="20dp"
           android:orientation="horizontal"
     
          >
                android:id="@+id/altitued"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="20sp"
          android:text="经度:"
          
          />
      
                  android:id="@+id/altituedText"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="20sp"
          android:text="NULL"
          />
      
                android:id="@+id/longtitued"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_marginLeft="60dp"
          android:textSize="20sp"
          android:text="纬度:"
          />
      
                  android:id="@+id/longtituedText"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="20sp"
          android:text="NULL"
          />
       
       
      
                android:id="@+id/contentLine"
          android:layout_below="@+id/contentShow"
          android:layout_width="match_parent"
          android:layout_marginTop="20dp"
           /> 
           
      
                android:id="@+id/addressEdit"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_below="@+id/contentLine"
          android:layout_centerHorizontal="true"
          android:orientation="horizontal"
           >
                  android:id="@+id/addressName"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center_vertical"
          android:textSize="18sp"
          android:text="地点名称:"
          />


                    android:id="@+id/addressNameText"
          android:layout_width="300dp"
          android:layout_height="wrap_content"
          android:textSize="18sp"
             />
             
         


(三)将布局转化为View控件

View view = View.inflate(MainActivity.context, R.layout.add_address_dialog, null);

要是不明白参数可以百度一下


(四)只要将转化的View控件加载就可以了


  addDialog.setView(view);//加载自定义布局

   addDialog.show();//显示对话框

总结:Builder易用而且还灵活,可以加载自己的布局,而且它还有两个按钮属性addDialog.setPositiveButton(CharSequence text, OnClickListener listener)
和addDialog.setNegativeButton(CharSequence text, OnClickListener listener),以我的理解前者是肯定按钮,后者是否定按钮。如果有什么不对的大家可以指正,大家相互交流学习,哈哈,,,




你可能感兴趣的:(android)