2016-06-18 3 views
0

enter image description here 사용자 지정보기 그룹을 만들 수 있습니다.부모 너비와 높이를 기준으로 하위보기 크기 조정

i는 런타임에 위의 레이아웃에 동적으로 추가됩니다. 289 DP (템플릿)의 높이

Template.java

currentTemplateView = LayoutInflater.from(context).inflate(R.layout.template_one, this, false); 

addView(currentTemplateView, 0); 
@Override 
    protected void onLayout(boolean changed, int l, int t, int r, int b) { 
     Log.e("Onla", "" + l + t); 
     int row, col, left, top; 
     for (int i = 0; i < getChildCount(); i++) { 
      View child = getChildAt(i); 
      child.layout(0, 0, getMeasuredWidth(), getMeasuredHeight()); 
     } 

     // addView(currentTemplateView, 0); 
    } 

    @Override 
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { 
     int mode = MeasureSpec.getMode(widthMeasureSpec); // mode == View.MesaureSpec.EXACTLY 
     int size = MeasureSpec.getSize(widthMeasureSpec); // size == 400 
     Log.e("onmeasure", "Width: " + mode + "," + size); 
     for (int i = 0; i < getChildCount(); i++) { 
      measureChildWithMargins(getChildAt(i), widthMeasureSpec, 0, heightMeasureSpec, 0); 

      // getChildAt(i).measure(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.getSize(heightMeasureSpec)); 
     } 
     super.onMeasure(widthMeasureSpec, heightMeasureSpec); 

    } 

일반 레이아웃. 좋은 디스플레이 ..

내가 목록 또는 격자보기에서 사용한. 보기 그룹의 하위 항목이 축소되었습니다. 상위 뷰 그룹 (template.java)에 맞아야합니다.

enter image description here

나는 내가 내 코드 또는 이것에 대한 어떤 생각으로 변경해야 내가 .. 나를 보자 않는 어떤 크기 조절 첫 번째 이미지처럼 보면 뷰 그룹 싶어 .. 사전에

감사합니다.

답변

0

마지막으로 내가 ... 내가가 필요했다 그래서 난 그냥 템플릿보기를 확장

 if (isScaleLayout) { 

       view.setScaleX(scaleX);/0-1 
       view.setScaleY(scaleY);/0-1 
       view.setPivotX(0f); 
       view.setPivotY(getWidth()); 
      } 
**XML** 

<FrameLayout 
     android:layout_width="150dp" // Actually size for layout/ adapter view 
     android:layout_height="80dp" 
     android:padding="3dp"> 

     <com..Template 
      android:id="@+id/template" 
      android:layout_width="@dimen/template_height"//205 
      android:layout_height="@dimen/template_height"//205 /> 


    </FrameLayout>