2013-08-28 2 views
0

my imageview не полностью показывает на ширине изображения Посмотреть это изображение его показать пробел http://imgur.com/3fDXgij, но я хочу показать mageview, как эта форма http://imgur.com/g8UeI4b и изображение показать полный в изображении нет пробела ниже мой код пожалуйста, помогите мнекак показать изображение без пробелов

<ImageView 
    android:id="@+id/test_button_image" 
    android:layout_width="80dp" 
    android:layout_marginLeft="10dp" 
    android:layout_marginTop="10dp" 
    android:layout_marginBottom="15dp" 
    android:layout_height="60dp" 
    android:layout_alignParentTop="true" 
    android:background="@drawable/border6" 
    android:src="@drawable/ic_launcher" > 
</ImageView> 

ответ

0

ImageView заполнить макет (в вашем XML):

android:scaleType="fitXY" 

Если вы хотите, чтобы сократить углы вы должны:

public static Bitmap getRoundedCornerBitmap(Bitmap bitmap, int pixels) { 
    Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap 
      .getHeight(), Config.ARGB_8888); 
    Canvas canvas = new Canvas(output); 

    final int color = 0xff424242; 
    final Paint paint = new Paint(); 
    final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); 
    final RectF rectF = new RectF(rect); 
    final float roundPx = pixels; 

    paint.setAntiAlias(true); 
    canvas.drawARGB(0, 0, 0, 0); 
    paint.setColor(color); 
    canvas.drawRoundRect(rectF, roundPx, roundPx, paint); 

    paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); 
    canvas.drawBitmap(bitmap, rect, rect, paint); 

    return output; 
} 

reference

2
android:adjustViewBounds="true" 

Ссылка: http://developer.android.com/reference/android/widget/ImageView.html#attr_android:adjustViewBounds это должно решить ваши проблемы. В этом случае масштабирование не является вашей проблемой, поскольку изображение уже масштабируется. Проблема в том, что контейнер пытается получить все возможное пространство внутри макета, но изображение не может расширить свою ширину, потому что оно пытается сохранить его соотношение.

<ImageView 
    android:id="@+id/test_button_image" 
    android:layout_width="80dp" 
    android:adjustViewBounds="true" 
    android:layout_marginLeft="10dp" 
    android:layout_marginTop="10dp" 
    android:layout_marginBottom="15dp" 
    android:layout_height="60dp" 
    android:layout_alignParentTop="true" 
    android:background="@drawable/border6" 
    android:src="@drawable/ic_launcher" > 
</ImageView> 

Этот атрибут «обрезает» оставшееся неиспользуемое пространство в ImageView.

Также вы должны проверить фоновое изображение, если его правильно 9-кратное изображение.

Я бы порекомендовал вам поставить изображение без какого-либо фона внутри FrameLayout и установить изображение рамки для этого FrameLayout.

+0

это полностью исправить проблему! Благодаря! –

-1
<LinearLayout 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:background="@Android:Color:white" 
     android:padding="1dp" > 

    <ImageView 
    android:id="@+id/test_button_image" 
    android:layout_width="wrapcontent" 
    android:layout_height="wrapcontent" 
    android:background="@drawable/border6" 
    > 
</ImageView> 

</LinearLayout> 
Смежные вопросы