我试图应用一个动画到我的 Android 应用程序中的一个视图后,我的活动被创建。为此,我需要确定视图的当前大小,然后设置一个动画,以从当前大小缩放到新的大小。这一部分必须在运行时完成,因为视图根据用户的输入可以扩展到不同的大小。我的布局是用 XML 定义的。
这似乎是一个容易的任务,有许多关于这个问题的所以问题,虽然没有解决我的问题,显然。也许我遗漏了一些显而易见的东西。我通过以下方式了解自己的观点:
ImageView myView = (ImageView) getWindow().findViewById(R.id.MyViewID);
这样工作得很好,但是当调用 getWidth()
、 getHeight()
、 getMeasuredWidth()
、 getLayoutParams().width
等时,它们都返回0。我还尝试在视图上手动调用 measure()
,然后调用 getMeasuredWidth()
,但是没有效果。
我尝试过调用这些方法,并在活动的 onCreate()
和 onPostCreate()
中的调试器中检查对象。如何在运行时计算出这个视图的确切尺寸?