Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法

   Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法

        这篇文章主要介绍了Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法,涉及Android获取文字宽高、状态栏高度、textView宽度及屏幕尺寸的相关技巧,需要的朋友可以参考下

  首先定义TextView对象commentText

  获取文字的宽高:

  ?

1
2
3
4
5
6
7
8

TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG);
textPaint.setTextSize(commentText.getTextSize());
textPaint.setColor(Color.WHITE);
FontMetrics fontMetrics = textPaint.getFontMetrics();
float fTop = fontMetrics.top;
float fBottom = fontMetrics.bottom;
float textHeight = (int)(fBottom - fTop);
float textWidth = (int)textPaint.measureText(commentText.getText());

  获取手机屏幕上方状态栏高度:

  复制代码 代码如下:

  DisplayMetrics dm = new DisplayMetrics();

  getWindowManager().getDefaultDisplay().getMetrics(dm);

  int width = dm.widthPixels; //屏幕宽

  int height = dm.heightPixels; //屏幕高

  Rect frame = new Rect();

  getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);

  int statusBarHeight = frame.top; //状态栏高

  int contentTop = getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop();

  int titleBarHeight = contentTop - statusBarHeight; //标题栏高

  获取手机屏幕宽高:

  复制代码 代码如下:

  WindowManager wm = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE);

  int width = wm.getDefaultDisplay().getWidth();//屏幕宽度

  int height = wm.getDefaultDisplay().getHeight();//屏幕高度

  获取textView宽度

  ?

1
2

TextPaint paint = textView.getPaint();
float len = paint.measureText(string);

  获取屏幕尺寸:

  ?

1
2
3
4
5

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels/dm.xdpi,2);
double y = Math.pow(dm.heightPixels/dm.ydpi,2);
double screenInches = Math.sqrt(x+y); //屏幕尺寸(英寸)

  希望本文所述对大家的Android程序设计有所帮助。

时间: 2024-12-31 00:44:21

Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法的相关文章

Android获取手机屏幕宽高

//如果是获取单位是像素,可以如下: Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); int width = size.x; int height = size.y; //如果不在Activity页面,可以通过获取默认display WindowManager wm = (WindowManager) context.getSyst

Android编程基础之获取手机屏幕大小(DisplayMetrics应用)示例_Android

本文实例讲述了Android获取手机屏幕大小的方法.分享给大家供大家参考,具体如下: 这里主要用了三个对象TextView ,Button ,以及DisplayMetrics ,其中Displaymetrics 是取得手机屏幕大小的关键类,这个例子非常的简单,当我们点击按钮,触发事件,在TextView 里显示手机屏幕的宽高分辨率. 看一下效果图: 按钮触发前: 按钮触发后: 其中我们在res->layout->values->string.xml增加了两行如下: <string

Android中获取手机屏幕大小的方法_Android

本文为大家解析Android中如何获取手机屏幕大小,提供一个解决方法,分享给大家供大家参考,具体内容如下 运行效果图: 运行程序后,当我们点击Button按钮时,可以看到下面的效果图: 具体代码: 我们可以通过使用类DisplayMetrics来获取手机屏幕的分辨率大小.DisplayMetrics类是获取手机屏幕各种属性的关键类.下面通过例子来展示如何获取手机屏幕的分辨率. 在布局文件main.xml中添加一个TextView对象,一个Button对象.其中TextView对象用来显示获得的分

Android中获取手机屏幕大小的方法

本文为大家解析Android中如何获取手机屏幕大小,提供一个解决方法,分享给大家供大家参考,具体内容如下 运行效果图: 运行程序后,当我们点击Button按钮时,可以看到下面的效果图: 具体代码: 我们可以通过使用类DisplayMetrics来获取手机屏幕的分辨率大小.DisplayMetrics类是获取手机屏幕各种属性的关键类.下面通过例子来展示如何获取手机屏幕的分辨率. 在布局文件main.xml中添加一个TextView对象,一个Button对象.其中TextView对象用来显示获得的分

Android编程获取手机屏幕分辨率大小的方法

本文实例讲述了Android编程获取手机屏幕分辨率大小的方法.分享给大家供大家参考,具体如下: import android.app.Activity; import android.os.Bundle; import android.util.DisplayMetrics; import android.widget.TextView; public class A03Activity extends Activity { private TextView mTextView01; /** C

JS和jquery获取各种屏幕的宽度和高度的代码

这篇文章介绍了JS和jquery获取各种屏幕的宽度和高度的代码,有需要的朋友可以参考一下   Javascript: 网页可见区域宽: document.body.clientWidth 网页可见区域高: document.body.clientHeight 网页可见区域宽: document.body.offsetWidth (包括边线的宽) 网页可见区域高: document.body.offsetHeight (包括边线的高) 网页正文全文宽: document.body.scrollWi

Android获取手机SIM卡运营商信息的方法_Android

本文实例讲述了Android获取手机SIM卡运营商信息的方法,对于Android程序设计有非常实用的价值.分享给大家供大家参考之用.具体方法如下: 主要功能代码如下: /** * 获取SIM卡运营商 * * @param context * @return */ public static String getOperators(Context context) { TelephonyManager tm = (TelephonyManager) context .getSystemServic

Android获取手机位置的实现代码_Android

本文实例为大家分享了Android获取手机位置的方法,供大家参考,具体内容如下 1.项目Src下创建...service包,然后新建GPSService类 package com.zebra.mobilesafe.service; import java.io.IOException; import java.io.InputStream; import android.app.Service; import android.content.Intent; import android.cont

Android获取手机的版本号等信息的代码_Android

本文实例分享了Android获取手机系统版本等信息的方法,供大家参考,具体内容如下: 第一种代码: String phoneInfo = "Product: " + android.os.Build.PRODUCT; phoneInfo += ", CPU_ABI: " + android.os.Build.CPU_ABI; phoneInfo += ", TAGS: " + android.os.Build.TAGS; phoneInfo +=