我是一个Android新手。这应该是世界上最简单的事情,但弄清楚它让我发疯:如何获取视图或布局的尺寸?
标准方法似乎是这样的:
((LinearLayout)this.findViewById(R.id.MyLayout)).getWidth();
除了这总是返回零,因为我试图在Activity启动时(onCreate)执行此操作,而几何形状还没有设置好。我尝试添加延迟以给它设置布局的机会,但它不会设置布局直到onCreate返回。所以显然它不是线程化的。:P
我找到了一堆页面,谈论覆盖各种不同的回调函数,以确保在调用getWidth时加载布局 - 但当我尝试将覆盖放入我的Activity时,所有这些页面都会引发错误。所以我可以假设它们是测量布局和/或视图的回调。问题在于我没有使用自定义视图/布局类 - 只是标准的视图/布局类。所以据我所知,我不能添加覆盖。
有人知道我该怎么办吗?我已经花了大约8个小时来解决这个问题,却一无所获。在大多数开发环境中,这通常是一个微不足道的事情!