常见Dialog
来源:互联网 发布:vue.js 动态添加class 编辑:程序博客网 时间:2024/05/05 05:56
public class MyDialog extends Dialog implements View.OnClickListener{ private TextView contentTxt; private TextView titleTxt; private TextView submitTxt; private TextView cancelTxt; private Context mContext; private String content; private OnCloseListener listener; private String positiveName; private String negativeName; private String title; public MyDialog(Context context) { super(context); this.mContext = context; } public MyDialog(Context context, String content) { super(context, R.style.dialog); this.mContext = context; this.content = content; } public MyDialog(Context context, int themeResId, String content) { super(context, themeResId); this.mContext = context; this.content = content; } public MyDialog(Context context, int themeResId, String title,String content, OnCloseListener listener) { super(context, themeResId); this.mContext = context; this.content = content; this.listener = listener; this.title=title; } protected MyDialog(Context context, boolean cancelable, OnCancelListener cancelListener) { super(context, cancelable, cancelListener); this.mContext = context; } public MyDialog setTitle(String title){ this.title = title; return this; } public MyDialog setPositiveButton(String name){ this.positiveName = name; return this; } public MyDialog setNegativeButton(String name){ this.negativeName = name; return this; } @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.view_dialog_common); setCanceledOnTouchOutside(false); initView(); } private void initView(){ contentTxt = (TextView)findViewById(R.id.content); titleTxt = (TextView)findViewById(R.id.title); submitTxt = (TextView)findViewById(R.id.submit); submitTxt.setOnClickListener(this); cancelTxt = (TextView)findViewById(R.id.cancel); cancelTxt.setOnClickListener(this); contentTxt.setText(content); if(!TextUtils.isEmpty(positiveName)){ submitTxt.setText(positiveName); } if(!TextUtils.isEmpty(negativeName)){ cancelTxt.setText(negativeName); } if(!TextUtils.isEmpty(title)){ titleTxt.setText(title); } } @Override public void onClick(View v) { switch (v.getId()){ case R.id.cancel: if(listener != null){ listener.onClick(this, false); } this.dismiss(); break; case R.id.submit: if(listener != null){ listener.onClick(this, true); } break; } } public interface OnCloseListener{ void onClick(Dialog dialog, boolean confirm); }}
style
<style name="dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item> <!--边框--> <item name="android:windowIsFloating">true</item> <!--是否浮现在activity之上--> <item name="android:windowIsTranslucent">false</item> <!--半透明--> <item name="android:windowNoTitle">true</item> <!--无标题--> <item name="android:windowBackground">@android:color/transparent</item> <!--背景透明--> <item name="android:backgroundDimEnabled">true</item> <!--模糊--></style>布局文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/bg_round_white" android:orientation="vertical" > <TextView android:id="@+id/title" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" android:padding="12dp" android:layout_marginTop="12dp" android:text="提示" android:textSize="16sp" android:textColor="@color/black"/> <TextView android:id="@+id/content" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center" android:layout_gravity="center_horizontal" android:lineSpacingExtra="3dp" android:layout_marginLeft="40dp" android:layout_marginTop="20dp" android:layout_marginRight="40dp" android:layout_marginBottom="30dp" android:text="" android:textSize="12sp" android:textColor="@color/main_text_color"/> <View style="@style/line_thin_full"/> <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal"> <TextView android:id="@+id/cancel" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_weight="1.0" android:gravity="center" android:text="取消" android:textSize="12sp" android:textColor="@color/main_text_color"/> <View android:layout_width="1dp" android:layout_height="match_parent" android:background="@color/divider_color"/> <TextView android:id="@+id/submit" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:layout_weight="1.0" android:text="确定" android:textSize="12sp" android:textColor="@color/common_color1"/> </LinearLayout></LinearLayout>用法new MyDialog(mContext, R.style.dialog, "温馨提示", msg, new MyDialog.OnCloseListener() { @Override public void onClick(Dialog dialog, boolean confirm) { if (confirm) { checkIfDelete(position, bankList.get(position).getBankCard(), bankList.get(position).getType(), dialog); } else { dialog.dismiss(); } }}).show();
阅读全文
0 0
- 常见Dialog
- Android Dialog常见使用
- 常见的对话框Dialog
- android开发Dialog常见用法
- easyui dialog 常见的使用
- Dialog 自定义一些常见效果
- 几种常见的Dialog
- 常见的Dialog的使用
- 笔记8 Dialog常见类型及常用属性 自定义dialog
- android dialog常见的几种用法
- Android中五种常见的Dialog演示
- Android Dialog的五种常见使用
- 几种常见Dialog,直接拿去用!
- Android培训 六种常见Dialog
- 自定义一些常见的Dialog效果
- 几种常见Dialog,懒人必收
- Android开发(19)---常见dialog对话框的运用
- Android Dialog 7种常见的对话框使用
- 3-10 分礼物
- Android SDK镜像服务器
- WKWebViewJavascriptBridge 在iOS 11上的问题
- block为什么使用copy修饰
- C语言连接oracle实例
- 常见Dialog
- maven tomcat插件热部署配置过程
- 我常用的linux命令
- source is null for getproperty
- ARP协议
- 三位代表中国科技圈的85后技术男,他们眼中的AI是什么?
- thermal的cpu cool device
- 【Qt学习笔记之一】初识Qt、环境搭建及hello world的实现
- 关于Python绘图模块Turtle库详解