2
이 메소드는 예를 들어 동적으로 검색 할 때 올바른 값을 반환합니다. onCreate()에서 유일한 예외는 xml 레이아웃 파일에서 크기가 정의되지 않은 것처럼 지정된 경우입니다 (예 : 'wrapping content'등) 등의 값을 검색하는 방법이 있습니까 ???안드로이드 layoutParams getWidth() getHeight()
이 메소드는 예를 들어 동적으로 검색 할 때 올바른 값을 반환합니다. onCreate()에서 유일한 예외는 xml 레이아웃 파일에서 크기가 정의되지 않은 것처럼 지정된 경우입니다 (예 : 'wrapping content'등) 등의 값을 검색하는 방법이 있습니까 ???안드로이드 layoutParams getWidth() getHeight()
올바른 너비와 높이를 반환해야합니다. onCreate는 자식 뷰의 레이아웃이 완료되기 전에 호출됩니다. 따라서 너비와 높이가 아직 계산되지 않았습니다. 높이와 너비를 얻으려면. onCreate 메서드에 넣으십시오.
LinearLayout layout = (LinearLayout)findViewById(R.id.YOUD VIEW ID);
ViewTreeObserver vto = layout.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
hs.getViewTreeObserver().removeGlobalOnLayoutListener(this);
int width = layout.getMeasuredWidth();
int height = layout.getMeasuredHeight();
}
});
** hs ** 란 무엇입니까? – hakiko
@hakiko 나는 그것이 layout.getViewTreeObserver() 여야한다고 생각합니다. removeGlobalOnLayoutListener (this); – blessenm
또는'final'을'vto'에 추가하면'onGlobalLayout()'안에'vto.removeGlobalOnLayoutListener (this)'를 사용할 수 있습니다. – vilpe89