可以通过使用类DisplayMetrics来获取手机屏幕的分辨率大小。
DisplayMetrics类是获取手机屏幕各种属性的关键类,下面通过例子来展示如何获取手机屏幕的分辨率。
在布局文件mainxml中添加一个TextView对象,一个Button对象。其中TextView对象用来显示获得的分辨率值,Button对象是当点击时获取分辨率。mainxml的代码如下:
<xml version="10" encoding="utf-8">
<LinearLayout xmlns:android=">
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="手机分辨率为:"/>
<Button
android:id="@+id/btnOK"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="获取手机分辨率"/>
</LinearLayout>
在TestActivity中的代码如下:
public class TestActivity extends Activity {
private TextView tv;
private Button btn;
//获取手机屏幕分辨率的类
private DisplayMetrics dm;
public void onCreate(Bundle savedInstanceState) {
superonCreate(savedInstanceState);
setContentView(Rlayoutmain);
tv = (TextView)findViewById(Ridtv);
btn = (Button)findViewById(RidbtnOK);
btnsetOnClickListener(new ViewOnClickListener() {
public void onClick(View v) {
dm = new DisplayMetrics();
getWindowManager()getDefaultDisplay()getMetrics(dm);
//获得手机的宽度和高度像素单位为px
String strPM = "手机屏幕分辨率为:" + dmwidthPixels+" "+dmheightPixels;
tvsetText(strPM);
}
});
}
}
运行程序后,当我们点击Button按钮时,可以看到下面的效果图:
1、js中获取当前屏幕宽度方法如下:
网页可见区域宽: documentbodyclientWidth
网页可见区域高: documentbodyclientHeight
网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)
网页可见区域高: documentbodyoffsetHeight (包括边线的高)
网页正文全文宽: documentbodyscrollWidth
网页正文全文高: documentbodyscrollHeight
网页被卷去的高: documentbodyscrollTop
网页被卷去的左: documentbodyscrollLeft
网页正文部分上: windowscreenTop
网页正文部分左: windowscreenLeft
屏幕分辨率的高: windowscreenheight
屏幕分辨率的宽: windowscreenwidth
屏幕可用工作区高度: windowscreenavailHeight
屏幕可用工作区宽度: windowscreenavailWidth
2、js简介
js,是JavaScript的缩写,是一种直译式脚本语言,一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
avaScript是的源代码在发往客户端运行之前不需经过编译,而是将文本格式的字符代码发送给浏览器由浏览器解释运行。直译语言的弱点是安全性较差,而且在JavaScript中,如果一条运行不了,那么下面的语言也无法运行。
作者:徐景周版权所有:徐景周
基本构成思想:
原理很简单,只需要简要的三步。既:获取屏幕DC、得到当前鼠标所在的像素值、分解出像素值中的红、绿、蓝三色既可,很简单吧!
关键代码实现:
1、获取屏幕DC
HDC hDC = ::GetDC(NULL); //获取屏幕DC
2、获取当前鼠标位置像素值CPoint pt;GetCursorPos(&pt); //得到当前鼠标所在位置
COLORREF clr = ::GetPixel(hDC, ptx, pty); //获取当前鼠标点像素值
3、分解出像素点中的红、绿、蓝颜色值
CString ClrText;
ClrTextFormat("%d",GetRValue(clr)); //分解出红色值
ClrTextFormat("%d",GetGValue(clr)); //分解出绿色值
ClrTextFormat("%d",GetBValue(clr)); //分解出蓝色值
::ReleaseDC(NULL, hDC); //释放屏幕DC
以上部分代码的具体实现的细节问题,可在下载实例代码后,仔细查看源码既可(内有详细注释)。
点击下载exe文件点击下载示例源码****:
地址:陕西省西安市劳动路2号院六单元
邮编:710082
我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸
下面的代码即可获取屏幕的尺寸。
在一个Activity的onCreate方法中,写入如下代码:
DisplayMetrics metric = new DisplayMetrics();getWindowManager()getDefaultDisplay()getMetrics(metric);
int width = metricwidthPixels; // 屏幕宽度(像素)
int height = metricheightPixels; // 屏幕高度(像素)
float density = metricdensity; // 屏幕密度(075 / 10 / 15)
int densityDpi = metricdensityDpi; // 屏幕密度DPI(120 / 160 / 240)
但是,需要注意的是,在一个低密度的小屏手机上,仅靠上面的代码是不能获取正确的尺寸的。比如说,一部240x320像素的低密度手机,如果运行上述代码,获取到的屏幕尺寸是320x427。
因此,研究之后发现,若没有设定多分辨率支持的话,Android系统会将240x320的低密度(120)尺寸转换为中等密度(160)对应的尺寸,这样的话就大大影响了程序的编码。
所以,需要在工程的AndroidManifestxml文件中,加入supports-screens节点,具体的内容如下:
<supports-screensandroid:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:resizeable="true"
android:anyDensity="true" />
这样的话,当前的Android程序就支持了多种分辨率,那么就可以得到正确的物理尺寸了。
import androidappActivity;import androidosBundle;
import androidutilDisplayMetrics;
import androidwidgetTextView;
public class TextCanvasActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
superonCreate(savedInstanceState);
//setContentView(new MyView(this));
//定义DisplayMetrics 对象
setContentView(Rlayoutmain);
DisplayMetrics dm = new DisplayMetrics();
//取得窗口属性
getWindowManager()getDefaultDisplay()getMetrics(dm);
//窗口的宽度
int screenWidth = dmwidthPixels;
//窗口高度
int screenHeight = dmheightPixels;
TextView textView = (TextView)findViewById(Ridtv1);
textViewsetText("屏幕宽度: " + screenWidth + "\n屏幕高度: " + screenHeight);
}
}
<script>
windowonload = function(){
// 获取屏幕高度 documentdocumentElementclientHeight
consolelog(documentdocumentElementclientHeight);
// 获取屏幕宽度 documentdocumentElementclientWidth
consolelog(documentdocumentElementclientWidth);
}
</script>
获取手机屏幕大小,可以通过ZOL中关村在线查进行查询,还可以使用尺子测量手机屏幕对角线长度,换算一下即可。接下来我为大家 *** 作演示一下。
ZOL中关村查询进入中关村在线查,在图示位置输入需要查询的手机型号,点击“搜索”,以魅族16s手机为例。
进入之后,点击“查看更多参数”,如图所示。
进入之后,即可看到手机屏幕大小,如图所示。
用尺子测量用尺子测量屏幕对角线长度,然后换算成英寸即可(254厘米 = 1 英寸)。
以上就是关于怎样获取Android手机屏幕的大小全部的内容,包括:怎样获取Android手机屏幕的大小、js 中怎么获取当前屏幕的宽度、如何获取屏幕上各颜色的红、绿、蓝值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)