• android开发常用方法


    1、  //获取屏幕上每一毫米对应的像素数,此方法有时不太准确,需要手机的标准DPI值
            private int getPxOfMM(Context context){
                
                //每1一英寸 == 25.4mm
                float MMCount = 25.4f;
                
                DisplayMetrics dm = context.getResources().getDisplayMetrics();
    //            
                //取对角线上的像素数
                double DiaonalPixels = Math.sqrt(Math.pow(dm.widthPixels, 2)+ Math.pow(dm.heightPixels, 2));
                
                //取对角线的长度(mm)
                double diagonalLength = DiaonalPixels / dm.densityDpi * MMCount;
                
                //得到每一个毫米所对应的像素数
                int result = (int) Math.ceil(DiaonalPixels/diagonalLength);
                
                return result;
            }
    2获取android分辨率
         DisplayMetrics dm = new DisplayMetrics();   
         WindowManager wm = (WindowManager) this.mContext.getSystemService(Context.WINDOW_SERVICE);
         wm.getDefaultDisplay().getMetrics(dm); 
    
     
    
    3、在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden 
    例如:
    <activity android:name=".Main"                  
     android:label="@string/app_name"  
     android:windowSoftInputMode="adjustUnspecified|stateHidden"                  
     android:configChanges="orientation|keyboardHidden">             
        <intent-filter>                 
            <action android:name="android.intent.action.MAIN" />                 
            <category android:name="android.intent.category.LAUNCHER" />             
        </intent-filter>         
    </activity> 
    
     

     4、3、设置AlertDialog 点击按钮不消失

    try { 
                        Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing");  
                        field.setAccessible(true);
                        field.set(dialog, true); //true 为点击之后消失 ,false 为点击之后不消失   
                    } catch (SecurityException e) {  
                        e.printStackTrace();  
                    } catch (NoSuchFieldException e) {  
                        e.printStackTrace();  
                    } catch (IllegalArgumentException e) {  
                        e.printStackTrace();  
                    } catch (IllegalAccessException e) {  
                        e.printStackTrace();  
                    }
    5、控制输入法隐藏的代码
     ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
                                    .hideSoftInputFromWindow(getActivity()
                                                    .getCurrentFocus().getWindowToken(),
                                                    InputMethodManager.HIDE_NOT_ALWAYS);
  • 相关阅读:
    laravel使用redis报错
    PHP新特性W3Cschool
    【python】跳过验证直接登陆-cookie已经知道需要部分直接注入
    【python】显示等待
    【python】pymysql库的简单使用
    【python】UI自动化优化浏览器重复打开和跑脚本时电脑无法做其他工作的问题
    【python】seleniumwire和selenium的区别
    【python】UI自动化-新版
    【python】UI自动化获取输入框的值
    【python】UI自动化多窗口处理
  • 原文地址:https://www.cnblogs.com/Lee1992/p/2981349.html
Copyright © 2020-2023  润新知