AlertDialog的解析

一.AlertDialog的简介:

     继承于Dialog,能够显示一个,两个,三个button;如果你只想展示一个字符串类型的数据使用setMessage()方法就可以了,但如果你想显示一个更加复杂的View,查询一个加做custom的FrameLayout并添加子View进去 。  

      FrameLayout frameLayout = findViewById(android.R.id.custom);

      frameLayout.addView(customView);

 

二.AlertDialog的属性

       setTitle()  --设置标题

       setCustomTitle() --可以自定义标题

       setMessage()  --设置显示的信息(当显示内容是字符串的时候可以使用这种方法)

       setView(View customView,int left,int top,int right,int bottom)  --显示自定义的View也可以使用简介时候的方法添加进去  customView:内容主体 left: View和Dialog左边的距离 同理。 注意:该方法一定要在show()之前调用,否则无效 

      setButton(int which,Charsequence text,Messagemessage,OnClickListener listener)  --设置显示Button       which:BUTTON_POSITIVE 确定的Button

              which    --BUTTON_NEGATIVE   消极的Button          text Button的名字(name)    message:设置点击后发送的message(一般与Handler匹配)   listener:点击之后回调事件     注意:listener和message在方法中只存在一个

              which    --BUTTON_NEUTRAL    中立的Button          Button 从上到下的 在布局中的位置是从左到右

     dismiss()  消失      

三.AlertDialog.Builder的基本方法

       概念:因为AlertDialog的属性比较复杂,所以使用Build模式。AlertDialog.Builder是AlertDialog的内部类,一般构建AlertDialog只能使用AlertDialog.Builder的create()方法  (show()方法也可以创建,因为其内部调用了create()方法--创建并显示)

       构造方法: Builder(Context context,int themeResId)  context:上下文  themeResId:样式,如果没有就用默认的对话框样式

       setTitle(),setCustomTitle(),setMessage()

      setPositiveButton(),setNeutralButton(),setNegativeButton()

      setOnDismissListener() --当对话框消失时候的回调函数

      setItems(CharSequence[] items,OnClickListener listener)  当内容主体为list的时候 且list的内容都为 字符串的时候  listener:当某个item被点击的时候

      setAdapter(ListAdapter adapter,OnClickListener listener)   list的内容不为字符串的时候        点击的时候不能获取点击的位置(如果需要可以通过setView自定义内容View实现)

      setMulticChoiceItems(CharSequence[] items,boolean[] checkedItems, OnMultiChoiceClickListener listener) 复选框      items:复选的内容  checkedItems:是否选中  listener:选中之后的点击事件

     setSingleChoiceItems(CharSequence items[],int checkedItem,OnClickListener listener) 单选框  items:单选的内容   checkedItem:被选中的item     listener:选中之后的点击事件 (dialog:对话框  which:位置)     

四.AlertDialog的自定义的Theme

<style>

        <item name=”android:windowFrame”>@null</item>  //Dialog的WindowFrame框

        <item name=”android:windowIsFloating”>true</item> //是否浮现在Activity之上

        <item name=”android:windowIsTranslucent”>true</item> //是否半透明

        <item name=”android:windowNoTitle>true</item>  //是否显示Title

        <item name=”background”>@android:color/transparent</item> //Dialog的背景

        <item name=”android:textSize”>30sp</item>  //字体大小

       <item name=”android:typeface></item>       //字体

</style>

五.AlertDialog的基本使用

AlertDialog alertDialog = new AlertDialog.Builder()

                                                .setTitle(“---”)

                                                .setMessage(“---”)

                                                .setPositiveButton()

                                                .setNegativeButton()

                                                .create()

                                                .show()

 

转载于:https://www.cnblogs.com/xiongbo753/p/9801091.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值