zoukankan      html  css  js  c++  java
  • 在代码里设置控件在屏幕中的位置和获取屏幕的大小

     设置相对位置

    WindowManager manager=this.getWindowManager();
                Display display=manager.getDefaultDisplay();
                LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
                params.gravity=Gravity.CENTER;//居中显示
                params.topMargin=(int) (display.getHeight()*0.20);//距顶部的距离为屏幕高度的0.2倍
                img_history.setLayoutParams(params);
                


    获取屏幕的尺寸

            // 获取屏幕密度(方法1)
            int screenWidth  = getWindowManager().getDefaultDisplay().getWidth();        // 屏幕宽(像素,如:480px)
            int screenHeight = getWindowManager().getDefaultDisplay().getHeight();        // 屏幕高(像素,如:800p)
            
            Log.e(TAG + "  getDefaultDisplay", "screenWidth=" + screenWidth + "; screenHeight=" + screenHeight);
            
            
            // 获取屏幕密度(方法2)
            DisplayMetrics dm = new DisplayMetrics();
            dm = getResources().getDisplayMetrics();
            
            float density  = dm.density;        // 屏幕密度(像素比例:0.75/1.0/1.5/2.0)
            int densityDPI = dm.densityDpi;        // 屏幕密度(每寸像素:120/160/240/320)
            float xdpi = dm.xdpi;            
            float ydpi = dm.ydpi;
            
            Log.e(TAG + "  DisplayMetrics", "xdpi=" + xdpi + "; ydpi=" + ydpi);
            Log.e(TAG + "  DisplayMetrics", "density=" + density + "; densityDPI=" + densityDPI);
            
            screenWidth  = dm.widthPixels;        // 屏幕宽(像素,如:480px)
            screenHeight = dm.heightPixels;        // 屏幕高(像素,如:800px)
            
            Log.e(TAG + "  DisplayMetrics(111)", "screenWidth=" + screenWidth + "; screenHeight=" + screenHeight);
            
            
            
            // 获取屏幕密度(方法3)
            dm = new DisplayMetrics();
            getWindowManager().getDefaultDisplay().getMetrics(dm);
            
            density  = dm.density;        // 屏幕密度(像素比例:0.75/1.0/1.5/2.0)
            densityDPI = dm.densityDpi;        // 屏幕密度(每寸像素:120/160/240/320)
            xdpi = dm.xdpi;            
            ydpi = dm.ydpi;
            
            Log.e(TAG + "  DisplayMetrics", "xdpi=" + xdpi + "; ydpi=" + ydpi);
            Log.e(TAG + "  DisplayMetrics", "density=" + density + "; densityDPI=" + densityDPI);
            
            int screenWidthDip = dm.widthPixels;        // 屏幕宽(dip,如:320dip)
            int screenHeightDip = dm.heightPixels;        // 屏幕宽(dip,如:533dip)
    
            Log.e(TAG + "  DisplayMetrics(222)", "screenWidthDip=" + screenWidthDip + "; screenHeightDip=" + screenHeightDip);
            
            screenWidth  = (int)(dm.widthPixels * density + 0.5f);        // 屏幕宽(px,如:480px)
            screenHeight = (int)(dm.heightPixels * density + 0.5f);        // 屏幕高(px,如:800px)
            
            Log.e(TAG + "  DisplayMetrics(222)", "screenWidth=" + screenWidth + "; screenHeight=" + screenHeight);
  • 相关阅读:
    Html禁止粘贴 复制 剪切
    表单标签
    自构BeanHandler(用BeansUtils)
    spring配置中引入properties
    How Subcontracting Cockpit ME2ON creates SD delivery?
    cascadia code一款很好看的微软字体
    How condition value calculated in sap
    Code in SAP query
    SO Pricing not updated for partial billing items
    Javascript learning
  • 原文地址:https://www.cnblogs.com/jita/p/3167416.html
Copyright © 2011-2022 走看看