android 動態設置獲取控件大小,並設置寬度等於高度,或者高度等於寬度。

 

	public static void setViewWidthByHeight(View view) {
		final View mv = view;
		final ViewTreeObserver vto = mv.getViewTreeObserver();
		final ViewTreeObserver.OnPreDrawListener preDrawListener = new ViewTreeObserver.OnPreDrawListener() {
			public boolean onPreDraw() {
				
//				int width = mv.getMeasuredWidth();
				int height = mv.getMeasuredHeight();
				
				android.view.ViewGroup.LayoutParams lp = mv.getLayoutParams();
				lp.width = height;
				mv.setLayoutParams(lp);

				final ViewTreeObserver vto1 = mv.getViewTreeObserver();
				vto1.removeOnPreDrawListener(this);

				return true;
			}
		};
		vto.addOnPreDrawListener(preDrawListener);
	}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章