2012-09-10 34 views
0

我需要在创建时获得主要的LinearLayout的宽度。直到它实际绘制的宽度为0 - 直到onCreate(...)完成后才绘制...所以我想要做的是在绘制或调整大小时告诉它,然后从那里获取宽度。对于那些没有任何听众的人,所以没有人对如何在创建时获得宽度有任何建议?OnResizeListener或OnDrawListener或类似的

回答

0

也许它的垃圾答案..但你真的需要它在onCreate方法吗?

您可以从onStart方法中的onCreate方法移动所有内容。将有我认为一切正常,你没有得到宽度0 ..

但如果你真的需要它在onCreate方法。您可以重写视图的onSizeChanged方法。我现在是不是在PC与日食,但它看起来像:

View v=(View)findViewById(R.layout.your_layout); 
v.setOnSizeChangedListener(new OnSizeChangedListener(){ 
@override 
public OnSizeChanged(View v){ 
// ..... YOUR CODE IN HERE ...... 
} 
}); 

编辑: sry..it是正确的答案,但没有这么多:]有没有basicaly onSizeChangedListener,你需要写它自己..

采取https://stackoverflow.com/a/5087960/1148979看看那里你可以找到答案

+0

嗯...我仍然得到0 ...我也试过的onResume。 – bwoogie

+0

检查编辑..尝试覆盖onSizeChanged侦听器 – piggy

+0

我没有看到一个setOnSizeChangedListener .... – bwoogie