Skip to content

Commit d887de8

Browse files
committed
[commit] getScreenHeight
1 parent d8cb340 commit d887de8

File tree

3 files changed

+33
-6
lines changed

3 files changed

+33
-6
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ compile 'com.code19.library:library:0.0.5'
113113
* getRadioVersion 获取基带版本(无线电固件版本 Api14以上)
114114
* getUA 获取的浏览器指纹(User-Agent)
115115
* getDensity 获取得屏幕密度
116-
* getAccounts 获取google账号
116+
* getGoogleAccounts 获取google账号
117117
* isRunningOnEmulator 当前设备是否是模拟器
118118
* showSoftInputMethod 显示软键盘
119119
* hideSoftInputMethod 隐藏软键盘

app/src/main/java/com/code19/androidcommon/MainActivity.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,14 @@
2020
import android.content.Intent;
2121
import android.os.Bundle;
2222
import android.support.v7.app.AppCompatActivity;
23+
import android.util.DisplayMetrics;
24+
import android.util.Log;
2325
import android.view.View;
2426
import android.widget.Button;
2527

2628
import com.code19.androidcommon.ui.activity.AppManagerActivity;
2729
import com.code19.androidcommon.ui.activity.DeviceActivity;
30+
import com.code19.androidcommon.ui.activity.VirificationActivity;
2831

2932
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
3033
private static final String TAG = "ghost";
@@ -48,6 +51,17 @@ protected void onCreate(Bundle savedInstanceState) {
4851
apputils.setOnClickListener(this);
4952
deviceutils.setOnClickListener(this);
5053
virification.setOnClickListener(this);
54+
DisplayMetrics dm = new DisplayMetrics();
55+
dm = getResources().getDisplayMetrics();
56+
// 获取屏幕密度(方法3)
57+
dm = new DisplayMetrics();
58+
getWindowManager().getDefaultDisplay().getMetrics(dm);
59+
float density = dm.density; // 屏幕密度(像素比例:0.75/1.0/1.5/2.0)
60+
density = dm.density; // 屏幕密度(像素比例:0.75/1.0/1.5/2.0)
61+
int screenWidth = (int) (dm.widthPixels * density + 0.5f); // 屏幕宽(px,如:480px)
62+
int screenHeight = (int) (dm.heightPixels * density + 0.5f); // 屏幕高(px,如:800px)
63+
64+
Log.e(TAG, " DisplayMetrics(222)" + "screenWidth=" + screenWidth + "; screenHeight=" + screenHeight);
5165
}
5266

5367
@Override
@@ -68,7 +82,7 @@ public void onClick(View v) {
6882
case R.id.systemutils:
6983
break;
7084
case R.id.virification:
71-
85+
startActivity(new Intent(MainActivity.this, VirificationActivity.class));
7286
break;
7387
}
7488
}

library/src/main/java/com/code19/library/DensityUtil.java

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,10 @@
1717
package com.code19.library;
1818

1919
import android.content.Context;
20+
import android.graphics.Point;
2021
import android.util.DisplayMetrics;
22+
import android.view.Display;
23+
import android.view.WindowManager;
2124

2225
/**
2326
* Create by h4de5ing 2016/5/7 007
@@ -57,12 +60,22 @@ public static int getDialogW(Context c) {
5760

5861

5962
public static int getScreenW(Context c) {
60-
DisplayMetrics dm = c.getResources().getDisplayMetrics();
61-
return dm.widthPixels;
63+
DisplayMetrics metrics = c.getResources().getDisplayMetrics();
64+
return metrics.widthPixels;
6265
}
6366

6467
public static int getScreenH(Context c) {
65-
DisplayMetrics dm = c.getResources().getDisplayMetrics();
66-
return dm.heightPixels;
68+
WindowManager wm = (WindowManager) c.getSystemService(Context.WINDOW_SERVICE);
69+
Display display = wm.getDefaultDisplay();
70+
int heightPixels = 0;
71+
try {
72+
heightPixels = (Integer) Display.class.getMethod("getRawHeight").invoke(display);
73+
Point realSize = new Point();
74+
Display.class.getMethod("getRealSize", Point.class).invoke(display, realSize);
75+
heightPixels = realSize.y;
76+
} catch (Exception e) {
77+
e.printStackTrace();
78+
}
79+
return heightPixels;
6780
}
6881
}

0 commit comments

Comments
 (0)