2013-03-22 4 views
0

상대 레이아웃에서 두 개의 imageviews를 추가하고 이상한 동작이 발생했습니다. 마지막 이미지는 RelativeLayout.BELOW를 사용하고 프로그램 방식으로 이미지를 추가 할 때 마지막 이미지 중 하나를 50 %까지 축소합니다. 내 이미지 중 하나가 다른 이미지 아래에 표시됩니다. 나는이 코드를 사용합니다RelativeView에 추가 된 ImageView의 크기가 줄어 듭니다.

RelativeLayout layout = new RelativeLayout(getActivity()); 
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    layout.setLayoutParams(params); 
    layout.setId(10001); 

    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.CENTER_HORIZONTAL); 

    _imageView = new ImageView(getActivity()); 
    _imageView.setId(10002); 
    _imageView.setImageResource(_resource); 
    layout.addView(_imageView, params);  

    params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.BELOW, _imageView.getId()); 
    params.addRule(RelativeLayout.ALIGN_LEFT, _imageView.getId()); 

    ImageView shadowImage = new ImageView(getActivity()); 
    shadowImage.setId(10003); 
    shadowImage.setImageResource(R.drawable.card_shadow); 
    shadowImage.setAdjustViewBounds(true); 
    layout.addView(shadowImage, params); 

을하지만 programaticly 이미지를 추가하는 대신 XML을 사용할 때 전체 크기의 이미지를 얻을 :

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" > 

<ImageView 
    android:id="@+id/cardShadow" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/cardView" 
    android:layout_alignLeft="@drawable/card_01" 
    android:src="@drawable/card_shadow" 
    android:contentDescription=""/> 

<ImageView 
    android:id="@+id/cardView" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:src="@drawable/card_01" /> 

</RelativeLayout> 

답변

0

가 그냥 추가 :

이미지 뷰의 스케일링을 허용하지 않습니다
shadowImage.setScaleType(ScaleType.CENTER); 

. 좋은 통찰력과 조언을 해주셔서 감사드립니다.

0

당신이 FrameLayout이 다음 사용해야 이미지를 중첩하려면

0

상대 레이아웃 매개 변수 모두에 대해 Java 코드에서 WRAP_CONTENT를 사용하고 있지만 XML 코드에서 MATCH_PARENT에 대해 WRAP_CONTENT를 사용하고 있습니다. 그게 잡을 것 같아. :)

+0

동일한 문제가 layoutparams를 변경했습니다. 나는 그것을 ViewPager 안의 프래그먼트에 붙인다. – perborin

관련 문제