对话框 在android中是一种很常见的交互提示用户的方式,但是很多产品狗都叫我们这些做android的仿ios,搞的我们android程序员很苦逼,凭什么效果老是仿ios,有没有一点情怀,不过ios在界面封装确实比android好很多,吐槽完毕,比如一种很常见的场景就是在没网的情况下 提示用户,看效果图:


在很多界面都要有提示,那么就自然而然想到了封装,而不至于在每个页面都重写一篇,话不多说直接上代码

CommonDialog.java

public class CommonDialog extends Dialog{ private Context context; private String title;     private ClickListenerInterface clickListenerInterface;public CommonDialog(Context context) {super(context, R.style.MyDialogStyle);this.context = context;} @Override protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         init();    } private void init() {LayoutInflater inflater =LayoutInflater.from(context);View view =inflater.inflate(R.layout.dialog_common, null);setContentView(view);TextView tv_ok=  (TextView) view.findViewById(R.id.tv_ok);tv_ok.setOnClickListener(new clickListener());        Window dialogWindow = getWindow();        WindowManager.LayoutParams lp = dialogWindow.getAttributes();        DisplayMetrics d = context.getResources().getDisplayMetrics(); // 获取屏幕宽、高用        lp.width = (int) (d.widthPixels * 0.8); // 高度设置为屏幕的0.6        dialogWindow.setAttributes(lp);}public interface ClickListenerInterface {        public void doConfirm();   }    public void setClicklistener(ClickListenerInterface clickListenerInterface) {        this.clickListenerInterface = clickListenerInterface;     } private class clickListener implements View.OnClickListener {         @Override          public void onClick(View v) {              int id = v.getId();            switch (id) {             case R.id.tv_ok:             dismiss();                break;            }         }     };}

dialog_common.xml

<?xml version="1.0" encoding="UTF-8"?>    

对话框样式 style

使用:

final CommonDialog confirmDialog = new CommonDialog(getActivity());
            confirmDialog.show();
            confirmDialog.setClicklistener(new CommonDialog.ClickListenerInterface() {
            @Override
            public void doConfirm() {}
            });

更多相关文章

  1. Java 设计模式-建造者模式(Builder)Android讲解
  2. Android(安卓)高亮指示层提示
  3. Android(安卓)Camer2与Camera1 自定义相机拍照封装实例讲解
  4. Android(安卓)升级Android(安卓)Studio升级3.5提示下载fastutil
  5. android 震动和提示音的实现代码
  6. android 添加对back按钮的处理,点击提示退出
  7. Android(安卓)GoogleMap Overlay (图层标记)
  8. android列表为空时提示语
  9. android中Notification的使用

随机推荐

  1. 苹果Mac YouTube视频下载器推荐:Airy
  2. shell--if条件语句
  3. 解决redis消息通知造成大量redisMessageL
  4. 知识蒸馏:让LSTM重返巅峰!
  5. 带噪学习研究及其在内容审核业务下的工业
  6. 又一个技术风口来了
  7. 210324 CSS flex 布局
  8. 从理解到改进:非自回归翻译中的词汇选择 |
  9. 领英暂停中国区用户注册,会是下一个Zoom吗
  10. 图推荐算法在E&E问题上的应用