2011-09-06 4 views
0

item에 포함 된 bitmaplayer-list 안에 넣으려고합니다. layer-list은 Android XML 파일에 정의되어 있습니다. Android 액티비티 내에서 bitmap의 회전을 조정하고 싶습니다. 비트 맵은 Matrix을 사용하여 회전 할 수 있지만 XML 파일에 포함 된 비트 맵을 업데이트하는 방법을 모르겠습니다.레이어 목록 내에서 비트 맵 회전

내 코드는 지금까지 있습니다 : 당신은 쉽게 RotateDrawable를 사용하여 Bitmap를 회전 할 수

// Inside Activity 
Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(), 
       R.drawable.face_line_green); 

     int width = bitmapOrg.getWidth(); 
     int height = bitmapOrg.getHeight(); 

     Matrix matrix = new Matrix(); 
     matrix.postRotate(10); 

     Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0, 
       width, height, matrix, true); 

// Inside XML 
    <?xml version="1.0" encoding="utf-8"?> 
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
     <item android:top="6px"> 
      <bitmap android:src="@drawable/face_line_red" android:gravity="center" android:id="@+id/line_red" /> 
     </item> 
     <item android:left="4px"> 
      <bitmap android:src="@drawable/face_line_green" 
       android:gravity="center" android:id="@+id/line_green" /> 
     </item> 
    </layer-list> 

답변

0

. 결과적으로 Bitmap 순환을 수행하는 가장 쉬운 방법은 에 포장하여 LayerListDrawable에 싸서 포장하는 것입니다.

+0

도움을 주셔서 감사합니다. 그러나 저는 여전히 조금 붙어 있습니다. 그래서 XML을 다음과 같이 설정했습니다 :' \t \t <비트 맵 android : src = "@ drawable/face_line_green" \t \t \t android : gravity = "center"/> \t'? 메인 액티비티에서 'RotateDrawable'을 사용하여 어떻게 회전을 변경합니까? – BGM

+0

'Drawable'의 현재 레벨을 ('setLevel'을 통해) 변경해야합니다. –