2012-06-11 2 views
1

행을 동적으로 (가로 또는 세로) 추가하려고합니다. 각보기에는 고정 크기와 고정 된 패딩이 있습니다. 장치 화면 크기에 따라 동적으로 추가 할 수있는보기 수를 어떻게 결정합니까? 예를 들어, 작은 전화기 또는 mdpi는 xhdpi 장치에 비해보기 수가 더 적을 수 있습니다.Android의 화면 크기에 따라보기를 동적으로 추가하십시오.

감사합니다.

+0

동적으로 뷰를 추가해야하는 이유는 무엇입니까? 아니면 디자인의 필수 조건입니까? 화면 크기에 따라 상황을 조정하려면 논리 화면 밀도마다 다른 레이아웃을 만드십시오. – Squonk

+0

가능한 복제본 http://stackoverflow.com/q/9371617/1210260 – gobernador

+0

안녕하세요 dcanh121 응답이 있습니까 –

답변

1

다양한 방법이 있습니다.

첫째, 당신은보기 당신이 된 onMeasure을 무시할 수 있습니다()에서 getWidth()와 getHeight() 를 호출하여 컨테이너의 크기를 확인할 수 있습니다

@Override 
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec){ 
    int parentWidth = MeasureSpec.getSize(widthMeasureSpec); 
    int parentHeight = MeasureSpec.getSize(heightMeasureSpec); 
} 

화면에 따라 서로 다른 XML 레이아웃이있는 경우 크기, 당신은 그들 중 하나가로드되고 그에 따라 행동하는지 확인할 수 있습니다.

+0

레이아웃 파일이 하나뿐입니다. 비어있는 LinearLayout입니다. 그러면 레이아웃을이 레이아웃에 동적으로 추가 할 것입니다. – dcanh121

+0

View가 fill_parent로 설정되었다고 가정하면 http://developer.android.com/reference/android/view/View.html#getHeight()를 호출하고 현재 작업중인 항목을 확인하십시오. –

+0

필자 레이아웃을 fill_parent로 설정합니다. 보기가 fill_parent – dcanh121

관련 문제