zoukankan      html  css  js  c++  java
  • android Dialog实例

    Dialog类

     1 public class DialogUtil {
     2 
     3     public static Dialog EditDialog(Activity context,View view){
     4         final Dialog dialog = new Dialog(context, R.style.dialogStyle);
     5         dialog.setContentView(view);
     6         Window window = dialog.getWindow();
     7         WindowManager.LayoutParams lp = window.getAttributes();
     8         int screenWidth = getScreenWidth(context);
     9         lp.width =screenWidth;
    10         window.setGravity(Gravity.CENTER);
    11         return dialog;
    12         
    13     }
    14     
    15     public static int getScreenWidth(Activity context) {
    16         DisplayMetrics dm = new DisplayMetrics();
    17         context.getWindowManager().getDefaultDisplay().getMetrics(dm);
    18         return dm.widthPixels;
    19     }
    20 
    21     public static int getScreenHeight(Activity context) {
    22         DisplayMetrics dm = new DisplayMetrics();
    23         context.getWindowManager().getDefaultDisplay().getMetrics(dm);
    24         return dm.heightPixels;
    25     }
    26     
    27 }

    style

    1     
    2     <style name="dialogStyle">
    3         <item name="android:windowBackground">@android:color/transparent</item>
    4         <item name="android:windowNoTitle">true</item>
    5         <item name="android:windowIsTranslucent">true</item>
    6         <item name="android:windowContentOverlay">@null</item>
    7         <item name="android:windowFullscreen">false</item>
    8         <item name="android:windowIsFloating">true</item>
    9     </style>

    调用:

        private Dialog mEditNameDialog;
        private void showEditDialog(){
            if (mEditNameDialog == null){
                View v = LayoutInflater.from(this).inflate(R.layout.dialog_meeting_detailed_edit_name, null); 
                mEditNameDialog = DialogUtil.MeetingDetailedEditName(this, v);
                mEditNameDialog.show();
            }else{
                if (mEditNameDialog.isShowing())
                mEditNameDialog.dismiss();
                else
                    mEditNameDialog.show();
            }
        }

     .xml;略

  • 相关阅读:
    控制element表格禁用选择
    深度拷贝
    VScode修复eslint报错,保存的时候自动格式修正
    关于route监听
    PAT 1030 完美数列
    PAT1029 旧键盘(C完全正确)
    PAT 1028 人口普查
    PAT 1016
    PAT:1013
    PAT :1012 数字分类
  • 原文地址:https://www.cnblogs.com/jenson138/p/4354195.html
Copyright © 2011-2022 走看看