使用一个view的getWidth() getHeight() 方法来获取该view的宽和高,返回的值却为0。若是这个view的长宽很肯定不为0的话,那极可能是你过早的调用这些方法,也就是说在这个view被加入到rootview以前你就调用了这些方法,返回的值天然为0. ide
解决该问题的方法有不少,主要就是延后调用这些方法。能够试着在onWindowFocusChanged()里面调用这些方法。 post
也能够使用 get
Runnable runnable=new Runnable() { @Override public void run() { initView(); } }; Handler handler=new Handler(); handler.postDelayed(runnable, 10);