2014-01-10 9 views
0

저는 꽤 오랫동안이 문제에 봉착했습니다. 문제는 여러 개의 textViews 및 imageView로 구성된 선형 레이아웃이 있다는 것입니다. 그러나 이미지 뷰의 너비는 텍스트 뷰보다 작습니다. 내가 찾은 모든 것을 시도했지만 찾지 못했습니다. 중력을 사용하여 이미지를 왼쪽 또는 오른쪽으로 설정할 수 있지만 채우기를 사용하면 작은 너비가 중앙에 배치되고 유지됩니다. 내가 생각할 수있는 유일한 것은 이미지가 다른 스레드에 다운로드된다는 것입니다. 이미지를 다운로드 한 후에 너비 만 설정할 수 있습니까?LinearLayout의 ImageView와 TextView가 너비가 같지 않습니다.

// Download photo 
    this.post_body.setPhoto(url); 
    // Add imageview to linear layout 
    this.ll.addView((View) this.post_body.photo); 

    LinearLayout.LayoutParams layoutParams; 
    layoutParams = new LinearLayout.LayoutParams(
      LinearLayout.LayoutParams.WRAP_CONTENT, 
      LinearLayout.LayoutParams.WRAP_CONTENT); 
    layoutParams.gravity = Gravity.FILL_HORIZONTAL; 

    this.post_body.photo.setLayoutParams(layoutParams); 

답변

0

width = 0으로 설정하고 모든 textview 및 버튼, 원하는 이미지 뷰에 대해 가중치 1을 설정하십시오.

여기 1f는 체중입니다.

의 LayoutParams = 새로운 LinearLayout.LayoutParams ( LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT, 1F);

+0

뜻 setMaxWidth (0)? – user3162649

+0

너비는 이미 wrap_content로 설정되어 있습니다. 이것을 match_parent 또는 fill_parent로 변경하고 가중치 1f를 설정하십시오. – Amsheer