读书人

,Fragment里如何获取组件的宽度

发布时间: 2013-12-20 00:23:10 作者: rapoo

求助,Fragment里怎么获取组件的宽度

我想做个类似于QQ登录时选择QQ号的那种下拉菜单,但是遇到了个问题,我不能获取组件的宽度.试了全部的生命周期,都获取值为0。activity里有onWindowFocusChanged()这个生命周期可以获取组件宽度,Fragment里没有类似的么?
目前想到两个思路,一个是在Fragment的某个生命周期里里获得组件的宽度,另外一个是能不能在activity里获取Fragment的组件,然后在Activity的onWindowFocusChanged()里获取它的组件宽度。
,Fragment里如何获取组件的宽度
[解决办法]

引用:
Quote: 引用:

private EditText mEditText;

。。。。
mEditText = (EditText) rootView.findViewById(R.id.edittext);

。。。。。
int width = mEditText.getMeasuredWidth();

说了,是这个生命周期无法获取,我不懂哪个生命周期能获取子Fragment里的组件的宽度,这个是问题

不对呀,你点击EditText,再去执行上面的代码,肯定可以获取到这个宽度。因为这个时候EditText已经计算完了尺寸等。

mHandler.post(new Runnable() {
@Override
public void run() {
int width = mEditText.getMeasuredWidth();
}
}, 20);

读书人网 >Android

热点推荐