欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
android keyguard鎖屏程序不能全屏顯示
更改代碼如下:

  1. frameworks\base\policy\src\com\android\internal\policy\impl\KeyguardViewManager.java.  
  2.    
  3. android2.3.4_GB_T34H\frameworks\base\core\java\android\content\res\CompatibilityInfo.java  
  4. diff --git a/phone/com/android/internal/policy/impl/KeyguardViewManager.java b/phone/com/android/internal/policy/impl/KeyguardViewManager.java  
  5. index ba1d7f5..38bf161 100644  
  6. --- a/phone/com/android/internal/policy/impl/KeyguardViewManager.java  
  7. +++ b/phone/com/android/internal/policy/impl/KeyguardViewManager.java  
  8. @@ -28,6 +28,8 @@ import android.view.ViewGroup;  
  9. import android.view.ViewManager;  
  10. import android.view.WindowManager;  
  11. import android.widget.FrameLayout;  
  12. +import android.view.Display;  
  13. +import android.util.DisplayMetrics;  
  14.    
  15. /**  
  16.   * Manages creating, showing, hiding and resetting the keyguard.  Calls back  
  17. @@ -97,9 +99,21 @@ public class KeyguardViewManager implements KeyguardWindowController {  
  18.          if (mKeyguardHost == null) {  
  19.              if (DEBUG) Log.d(TAG, "keyguard host is null, creating it...");  
  20.    
  21. +            WindowManager wm = (WindowManager) mContext.getSystemService(Context.WINDOW_SERVICE);  
  22. +            DisplayMetrics  dm = new DisplayMetrics();  
  23. +            wm.getDefaultDisplay().getMetrics(dm);  
  24. +            Display display = wm.getDefaultDisplay();  
  25. +  
  26. +            int statusBarHeight = (int)Math.ceil( 25 * dm.density);  
  27. +            int height = display.getHeight();  
  28. +            int width = display.getWidth();  
  29. +  
  30. +            Log.i(TAG, "Display width = " + width);  
  31. +            Log.i(TAG, "Display height = " + height);  
  32. +            Log.i(TAG, "Statusbar height = " + statusBarHeight);  
  33. +  
  34.              mKeyguardHost = new KeyguardViewHost(mContext, mCallback);  
  35.    
  36. -            final int stretch = ViewGroup.LayoutParams.MATCH_PARENT;  
  37.              int flags = WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN  
  38.                      | WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER  
  39.                      | WindowManager.LayoutParams.FLAG_KEEP_SURFACE_WHILE_ANIMATING  
  40. @@ -109,7 +123,7 @@ public class KeyguardViewManager implements KeyguardWindowController {  
  41.                  flags |= WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM;  
  42.              }  
  43.              WindowManager.LayoutParams lp = new WindowManager.LayoutParams(  
  44. -                    stretch, stretch, WindowManager.LayoutParams.TYPE_KEYGUARD,  
  45. +                    width, (height - statusBarHeight), WindowManager.LayoutParams.TYPE_KEYGUARD,  
  46.                      flags, PixelFormat.TRANSLUCENT);  
  47.              lp.softInputMode = WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN;  
  48.              lp.windowAnimations = com.android.internal.R.style.Animation_LockScreen;  


解法二:這個(gè)方法解了我們的問(wèn)題,測試這么長(cháng)時(shí)間還沒(méi)出現問(wèn)題:(推薦)

1,android2.3.4_GB_T34H\frameworks\base\core\java\android\content\res

修改 frameworks/base/core/java/android/content/res/CompatibilityInfo.java中的如下部分:

  1. public static void updateCompatibleScreenFrame(DisplayMetrics dm, int orientation,  
  2.             Rect outRect) {  
  3.         int width = dm.widthPixels;  
  4.         int portraitHeight = (int) (DEFAULT_PORTRAIT_HEIGHT * dm.density + 0.5f);  
  5.         int portraitWidth = (int) (DEFAULT_PORTRAIT_WIDTH * dm.density + 0.5f);  
  6.         if (orientation == Configuration.ORIENTATION_LANDSCAPE) {  
  7.             int xOffset = (width - portraitHeight) / 2 ;  
  8.             outRect.set(xOffset, 0, xOffset + portraitHeight, portraitWidth);  
  9.         } else {  
  10.             int xOffset = (width - portraitWidth) / 2 ;  
  11.             outRect.set(xOffset, 0, xOffset + portraitWidth, portraitHeight);  
  12.         }  

把上面這段程序改為下面這一段程序:
==》

public static voidupdateCompatibleScreenFrame(DisplayMetrics dm, int orientation,

            Rect outRect) {

        int width = dm.widthPixels;

        int portraitHeight = (int)(DEFAULT_PORTRAIT_HEIGHT * dm.density + 0.5f);

        int portraitWidth = (int)(DEFAULT_PORTRAIT_WIDTH * dm.density + 0.5f);

        if (orientation ==Configuration.ORIENTATION_LANDSCAPE) {

            int xOffset = (width -portraitHeight) / 2 ;

outRect.set(0, 0, 0 + dm.widthPixels,dm.heightPixels);       //新加入代碼

-  outRect.set(xOffset, 0, xOffset +portraitHeight, portraitWidth);   //刪除原來(lái)代碼部分

} else

 {

            int xOffset = (width -portraitWidth) / 2 ;

      +   outRect.set(0, 0, 0 +dm.widthPixels, dm.heightPixels);            //新加入代碼

       - outRect.set(xOffset, 0, xOffset + portraitWidth, portraitHeight);   //刪除代碼部分

}

    }


 紅色部分是我們改動(dòng)的代碼,“-“ 是我們去除原始代碼:

frameworks/base/core/java/android/content/res/CompatibilityInfo.java這里面,DEFAULT_PORTRAIT_HEIGHT /DEFAULT_PORTRAIT_WIDTH 這兩個(gè)值比較重要。

打印出一些值,下面分析:

  1. dm.density = 1.5  
  2. portraitHeight = 720  
  3. portraitWidth = 480  
  4.   
  5. dm.widthPixels = 1024  
  6. dm.heightPixels= 600  
  7. width = dm.widthPixels  

其實(shí)出現偏移的原因是:
假設橫屏:

不正常情況下分析 :

xOffset = (width - portraitHeight) / 2= (1024-720)/ 2 = 152

所在在程序中原來(lái)的代碼是
outRect.set(xOffset, 0, xOffset + portraitHeight, portraitWidth);//原始代碼
outRect.set(152, 0,
152+ 720, 480);
xOffset 所以有了左右的偏移,如下圖所示:


改動(dòng)后,正常情況下分析:

改動(dòng)后計算:

outRect.set(0, 0, 0 + dm.widthPixels, dm.heightPixels);
outRect.set(0, 0, 0 + 1024, 600);


本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
android中獲得屏幕、視圖、任務(wù)欄、狀態(tài)欄的高寬以及屏幕的設置
android ImageView 按比例動(dòng)態(tài)縮放
Activity和Window的View的移動(dòng)的一些思考與體會(huì ),騰訊懸浮小火箭的實(shí)現策略
Android PopupWindow增加半透明蒙層
Android鎖屏狀態(tài)下彈出activity
不懂記,在A(yíng)ndroid 開(kāi)發(fā)中怎么全屏顯示——day1
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久