Android在onCreate方法中调用View的getWidth和getHeight时返回的结果是0,这个时候控件还没有Draw出来,所以取不到View的长和宽
最近在做动画,往往初始化一些东西的时候需要用到,网上的解决办法大都很繁琐,推荐一种简单的解决办法。
如需要得到view的宽高:
view.measure(0, 0);
int height = view.getMeasuredHeight();
int width = view.getMeasuredWidth();
需要获取多个View的宽高的话,只需要对根布局container的View 调用 measure(0, 0);
其他子View 直接getMeasuredHeight() / getMeasuredWidth()获取宽高即可。注:一定先调用measure(0, 0);
好使来赞!!😆
网友评论