0

외부 카드에서 전체 화면을 차지하는 이미지 뷰로로드 된 비트 맵을 표시하려고합니다. 내 목표는 Gallery 앱에 표시되는 방식을 표시하는 것입니다. 나는 scaletype="center", scaletype="fitXY"adjustViewBounds="true"이없는 레이아웃 xml을 사용해 보았습니다.이미지 뷰에서 전체 크기로 비트 맵 표시

내 XML은 예를 들어이

<ImageView 
    android:layout_width="wrap_content" 
    android:adjustViewBounds="false" 
    android:scaleType="center" 
    android:layout_centerInParent="true" 
    android:layout_height="wrap_content" 
    android:id="@+id/player_imageview" /> 

, 이 내 갤러리 응용 프로그램이 This is how my Gallery app displays it

이 어떻게 내 응용 프로그램 표시가 This is how my app displays it

어떤 도움을 것입니다을 표시하는 방법입니다 같다 감사하겠습니다. 감사.

+1

당신은 match_parent를 시도 했습니까? – XxGoliathusxX

+1

예, 있습니다. "match_parent"를 추가하면 이미지 뷰가 전체 화면을 차지하게됩니다. 나는 그것을 원하지 않는다. 소스 비트 맵의 ​​크기 만 점유하고 싶습니다. –

답변

0

나는 직접 질문에 대한 답을 찾았습니다. 갤러리 앱의 안드로이드 소스 코드를 탐색했습니다. Link to the layout of Gallery app. 그들은 AbsoluteLayout 내에 커스텀 이미지 뷰를 임베드했다. AbsoluteLayout은 더 이상 사용되지 않으므로 Frameview에 이미지 뷰를 포함합니다.

용액이 FrameLayout이이 RelativeLayout의 내부에 배치되어

<FrameLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ImageView 
     android:id="@+id/player_imageview" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#FF000000" /> 
</FrameLayout> 

이다. 따라서, 고정. 감사. :)

0

시도해보십시오.

<ImageView 
    android:layout_width="wrap_content" 
    android:adjustViewBounds="false" 
    android:scaleType="fitCenter" 
    android:layout_centerInParent="true" 
    android:layout_height="wrap_content" 
    android:id="@+id/player_imageview" /> 
+0

감사합니다. 하지만 그건 효과가 없었습니다. 나는 같은 결과를 얻었다. : –

+0

아,이 줄을 'android : scaleType = "fitCenter"'로 변경하십시오 : android : scaleType = "centerCrop"' –

관련 문제