Android在onCreate或者在Fragment的onCreateView中获取控件、屏幕的宽高

在onCreate中由于控件还没绘制完成,所有获取到控件的宽高都是0。正确的方式是在onCreate中通过回调实现,如下:

progress=(ProgressBar) v.findViewById(R.id.progress);
		
	
		progress.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
			
			@Override
			public void onGlobalLayout() {
				progress.getViewTreeObserver().removeGlobalOnLayoutListener(this);
				LayoutParams params=progress.getLayoutParams();
				 Log.e("宽,高",params.width.+""+params.height)
				 
			}
		});



你可能感兴趣的:(android)