2014-12-12 5 views
0

비트 맵을 사용하여 채워지는 Imageview를 표시하는 앱이 있습니다.Android : ImageView 비트 맵 이미지 잘림

Galaxy S3

Xperia Z

내가 무엇을해야합니까 :

이러한 장치에 대한 이미지는 다음과 같습니다 이미지는 삼성 갤럭시 S3에 제대로 표시하지만, 소니 엑스 페리아 Z.에 차단 잘리지 않도록 이미지를 표시하십시오.

try { 
      Paint paint1 = new Paint(); 
      paint1.setTextSize(20); 
      paint1.setTypeface(rcond); 
      int bitmapWidth = (int)(bitmapList.size() * (80 + paint1.measureText("\u2192")));// + paint1.measureText("\u2192")); 
      drawnBitmap = Bitmap.createBitmap(bitmapWidth, 110, Config.ARGB_8888); 

      Canvas canvas = new Canvas(drawnBitmap); 
      float left = 0; 

      for (Bitmap bmp : bitmapList){ 
       canvas.drawBitmap(bmp, left, 10, null); 

       left = left + 80;// + paint.measureText("\u2192"); 
      }   
     } 



<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/widget76" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@android:color/black" > 

    <ListView 
     android:id="@android:id/list" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:layout_marginTop="5dp" 
     android:divider="@android:color/black" 
     android:dividerHeight="10dp" /> 

    <RelativeLayout 
     android:id="@+id/widget78" 
     android:layout_marginTop="5dp" 
     android:layout_width="wrap_content" 
     android:paddingLeft="5sp" 
     android:paddingRight="5sp" 
     android:background="@drawable/roundedbutton" 
     android:layout_height="wrap_content" > 

<!--  <RelativeLayout --> 
<!--   android:id="@+id/widget778" --> 
<!--   android:layout_width="wrap_content" --> 
<!--   android:visibility="gone" --> 
<!--   android:background="@drawable/rounded_button_black" --> 
<!--   android:layout_height="wrap_content" > --> 

<!--   From --> 
     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif" 
      android:text="" 
      android:ellipsize="middle" 
      android:layout_alignParentLeft="true" 
      android:textColor="#000000" 
      android:textStyle="bold" 
      android:textSize="13sp" /> 

<!--   From Time--> 
     <TextView 
      android:id="@+id/textView3" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif" 
      android:layout_toRightOf="@id/textView1" 
      android:text="" 
      android:gravity="right" 
      android:layout_alignParentRight="true" 
      android:textColor="#000000" 
      android:textStyle="bold" 
      android:textSize="13dp" /> 

     <LinearLayout 
      android:id="@+id/llMid" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:weightSum="10" 
      android:orientation="horizontal" 
      android:layout_below="@id/textView1" 
      > 
     <ImageView 
      android:id="@+id/ImageView01" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_weight="9" 
      android:layout_gravity="left" 
      android:maxHeight="110dp" 
      android:paddingTop="3dp" 
      android:paddingBottom="3dp" 
      android:src="@drawable/walking" /> 

     <TextView 
      android:id="@+id/textView5" 
      android:layout_width="wrap_content" 
      android:fontFamily="sans-serif" 
      android:text="" 
      android:layout_gravity="center" 
      android:gravity="center" 
      android:layout_weight="1" 
      android:textColor="#000000" 
      android:textStyle="bold" 
      android:textSize="24sp" 
      android:layout_height="50sp"    
      android:width="60sp" />   
     </LinearLayout> 
<!--   To -->   
     <TextView 
      android:id="@+id/textView2" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif" 
      android:text="" 
      android:gravity="right" 
      android:layout_below="@id/llMid" 
      android:layout_alignParentLeft="true"    
      android:textColor="#000000" 
      android:textStyle="bold" 
      android:ellipsize="middle" 
      android:textSize="13sp" /> 

<!--   To Time -->   
     <TextView 
      android:id="@+id/textView4" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:fontFamily="sans-serif" 
      android:text="" 
      android:layout_below="@id/llMid" 
      android:layout_toRightOf="@id/textView2" 
      android:layout_alignParentRight="true"   
      android:gravity="right" 
      android:textColor="#000000" 
      android:textStyle="bold" 
      android:textSize="13sp" /> 
<!--  </RelativeLayout> --> 

    </RelativeLayout> 
</RelativeLayout> 

추신 : 이미지는 아래에 몇 개의 텍스트가있는 열차의 이미지입니다.

+0

최소 최대 높이 너비를 알려주세요 –

+0

@BhavinChauhan - 감사합니다. 나는 그것을 시도 할 것이다. – user2260040

+0

또한 XML을 게시하는 일부 코드도 시도해보십시오! – Leonardo

답변

0

며칠 동안 시도하고 다양한 아이콘을 그리기 위해 비트 맵을 사용하여 일관성없는 결과를 얻은 후에 작동하는 솔루션을 생각해 냈습니다.

표시 할 아이콘 수는 최대 10 개이지만 각 행에 몇 개가 있어야할지 모르겠습니다. 그래서 제 레이아웃에서 10 개의 ImageView를 정의합니다. 코드에서 필자는 각 이미지 뷰를 필요한 아이콘으로 설정했습니다. 나머지 것들은 가시성을 GONE으로 설정했습니다.

이것은 잘 작동하는 것처럼 보이며 자르지 않은 아이콘이 표시되지 않습니다.

0

ImageView에서 열차 드로어 블 (Drawable)로 src를 설정하지 않은 이유를 이해할 수 없습니다. 어쨌든, 당신은 PS 또는 다른 img 편집기에서 같은 이미지의 다른 크기를 만들고 적절하게 가져와야합니다. 어쨌든 다른 화면 크기에 접근하는 방법을 더 잘 이해하려면 read this guidethis one으로 보내주십시오.

희망이 있습니다.