如何解决如何从活动访问视图的尺寸?
| 访问myView.getWidth()
和getHeight()
总是返回零,我理解这是因为在视图布局之前我太早调用它们了。
但是如何从活动中访问视图的大小?我看不到要重写的方法,文档也没有建议我可以捕获的lifecycle
事件。
==================================
谢谢坦纳。这是我使用的代码,效果很好。
LinearLayout root = (LinearLayout)findViewById(R.id.main);
display d = ((WindowManager) this.getSystemService(Context.WINDOW_SERVICE)).getDefaultdisplay();
int screenWidth = d.getWidth();
int screenHeight = d.getHeight();
root.measure(screenWidth,screenHeight);
View myView = findViewById(R.id.myView);
int width = myView.getMeasuredWidth();
解决方法
看看这个:http://developer.android.com/guide/topics/ui/how-android-draws.html
您是否尝试过在视讯中呼叫
measure()
,然后再呼叫ѭ5??
注意,还有方法requestLayout()
, 在将布局设置为活动的内容视图之后,应该访问dimensins。
只需使用findViewById(id)通过id查找它,然后调用myView.getWidth()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。