android 开发中 怎么用jsjs 获取android手机屏幕高度

2015年8月 移动开发大版内专家分月排行榜第三2014年9月 移动开发大版内专家分月排行榜第三2014年7月 移动开发大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。Android中oncreate中如何获得控件高度或宽度?
onCreate函数只是提供了数据初始化的机会,此时还没有正式绘制图形。在图形尚未渲染的情况下,getWidth()或getHeight()得到的值为0。如果需要自适应屏幕,需要一进入界面就得到父控件大小,然后需要在onCreate中动态设置子控件大小。
方法1:利用ViewTreeObserver类的addOnPreDrawListener接口。(好)ViewTreeObserver vto = hscrollview.getViewTreeObserver();
&&&&&&&&&&&&&&&&&& vto.addOnPreDrawListener(newViewTreeObserver.OnPreDrawListener() {
&&&&&&&&&&&&&&&&&&&&&&&&&&& @Override
&&&&&&&&&&&&&&&&&&&&&&&&&&& publicboolean onPreDraw() {
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& if(hasMeasured == false){
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& intwid = hscrollview.getWidth();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& inthei = hscrollview.getHeight();
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& if(wid != 0 && hei != 0){
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& hasMeasured=
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&& });
方法2:利用ViewTreeObserver类的addOnGlobalLayoutListener接口。(好)
和方法1类似。
方法3:postDelayed延迟一定时候后获得控件大小再设置。(不太好)问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
虽然移动端做了好久了但是在获取手机屏幕宽度的时候一直还是很虚
虽然最好的是width=100%; 但是这样的话高度就不知道怎么弄了
用zepto的$(window).width();有时候有问题
后来有人说用window.innerWidth 但是有时候还是有问题 弹出320
今天用mx测试在微信上是好的弹出432,但是在新浪微博上弹出320
有没有一个好的获取手机屏幕宽度的方法呢?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
var width = (window.innerWidth & 0) ? window.innerWidth : screen.
同步到新浪微博
分享到微博?
Hi,欢迎来到 SegmentFault 技术社区!⊙▽⊙ 在这里,你可以提出编程相关的疑惑,关注感兴趣的问题,对认可的回答投赞同票;大家会帮你解决编程的问题,和你探讨技术更新,为你的回答投上赞同票。
明天提醒我
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:当前位置:
Android中如何获取手机屏幕大小
来源: 联系QQ: 作者: 佚名 来源: 网络 发布时间: 14/09/13
【编者按】:网学网Ipad2软件为您提供Android中如何获取手机屏幕大小参考,解决您在Android中如何获取手机屏幕大小学习中工作中的难题,参考学习。  通过使用类DisplayMetrics来获取手机屏幕的分辨率大小。DisplayMetrics类是获取手机屏幕各种属性的关键类。下面通过例子来展示如何获取手机屏幕的分辨率,在布局文件main.xml中添加一个TextView对象,一个Button对象。其中TextView对象用来显示获得的分辨率值,Button对象是当点击时获取分辨率。main.xml的代码如下:&view plain
&?xml&version=&1.0&&encoding=&utf-8&?&&&
&LinearLayout&xmlns:android=&/apk/res/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=&手机分辨率为:&/&&&
&&&android:id=&@+id/btnOK&&&
&&&android:layout_width=&fill_parent&&&
&&&android:layout_height=&wrap_content&&&
&&&android:text=&获取手机分辨率&/&&&
&/LinearLayout&&&& &&& 在TestActivity中的代码如下:&view plain
public&class&TestActivity&extends&Activity&{&&
private&TextView&&&
private&Button&&&
//获取手机屏幕分辨率的类&&
&private&DisplayMetrics&&&
public&void&onCreate(Bundle&savedInstanceState)&{&&
super.onCreate(savedInstanceState);&&
setContentView(R.layout.main);&&&
tv&=&(TextView)findViewById(R.id.tv);&&
btn&=&(Button)findViewById(R.id.btnOK);&&
btn.setOnClickListener(new&View.OnClickListener()&{&&
&&public&void&onClick(View&v)&{&&
&&dm&=&new&DisplayMetrics();&&
&&getWindowManager().getDefaultDisplay().getMetrics(dm);&&
&&//获得手机的宽度和高度像素单位为px&&
&&String&strPM&=&&手机屏幕分辨率为:&&+&dm.widthPixels+&*&&+dm.heightP&&
&&tv.setText(strPM);&&
}&&& && 运行程序后,当我们点击Button按钮时,可以看到下面的效果图:
上一篇资讯:
下一篇资讯:
文章排行榜JS,Jquery获取各种屏幕的宽度和高度
JS,Jquey获取各种屏幕的宽度和高度Javascipt:网页可见区域宽:document.ody.clientWidth网页可见区域高:document.ody.clientHeight网页可见区域宽:document.ody.offsetWidth(包括边线的宽)网页可见区域高:document.ody.offsetHeight(包括边线的高)网页正文全文宽:document.ody.scollWidth网页正文全文高:document.ody.scollHeight网页被卷去的高:document.ody.scollTop网页被卷去的左:document.ody.scollLeft网页正文部分上:window.sceenTop网页正文部分左:window.sceenLeft屏幕分辨率的高:window.sceen.height屏幕分辨率的宽:window.sceen.width屏幕可用工作区高度:window.sceen.availHeight屏幕可用工作区宽度:window.sceen.availWidthJQuey:$(document).eady(function(){alet($(window).height());浏览器当前窗口可视区域高度alet($(document).height());浏览器当前窗口文档的高度alet($(document.ody).height());浏览器当前窗口文档ody的高度alet($(document.ody).outeHeight(tue));浏览器当前窗口文档ody的总高度包括odepaddingmaginalet($(window).width());浏览器当前窗口可视区域宽度alet($(document).width());浏览器当前窗口文档对象宽度alet($(document.ody).width());浏览器当前窗口文档ody的宽度alet($(document.ody).outeWidth(tue));浏览器当前窗口文档ody的总宽度包括odepaddingmagin
& 果果文库所有资源均来源于互联网,仅供网友学习交流,若侵犯了您的权益,请联系我们予以删除。
5143&&人浏览
7413&&人浏览
4478&&人浏览
3395&&人浏览
19749&&人浏览
15981&&人浏览
16905&&人浏览
6277&&人浏览
8319&&人浏览
14711&&人浏览
7459&&人浏览
16459&&人浏览
8875&&人浏览
6285&&人浏览
16365&&人浏览
本文标题:JS,Jquery获取各种屏幕的宽度和高度 链接地址:
copyright@ 2013- Inc. All Rights Reserved 果果文库 版权所有 联系站长: ; 经营许可证编号:浙ICP备号

我要回帖

更多关于 android 获取js返回值 的文章

 

随机推荐