如何在Android中调整位图图像的大小

时间:2017-07-15 07:56:55

标签: java android textview android-bitmap

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
    android:paddingLeft="32dp"
    android:paddingTop="10dp"
    android:paddingRight="0dp"
    android:paddingBottom="10dp">
    <item android:bottom="3dp">
        <bitmap
            android:gravity="center_vertical|left"
            android:src="@drawable/ic_publish_black_24dp" />
        <shape android:shape="rectangle">
            <stroke
                android:width="0dp"
                android:color="#37474f" />
        </shape>
    </item>
</layer-list>  

这就是我所说的:

TextView aboutBags = new TextView( mContext );
aboutBags.setText("Compose");
aboutBags.setTextAppearance( R.style.RevStyleHelpAbout );
aboutBags.setBackgroundResource( R.drawable.rev_item_h_border_left );  

我在整个XML上尝试了边界属性android:width="22dp" android:height="22dp",但图像没有调整大小。

如何调整位图图像的大小?

Vielen dank im voraus。

1 个答案:

答案 0 :(得分:5)

使用Bitmap可能会对您有所帮助。使用方式如下:

Bitmap nameYourBitmap;

Bitmap resized = Bitmap.createScaledBitmap(nameYourBitmap, newWidth, newHeight, true);

你也可以这样做:

resized = Bitmap.createScaledBitmap(nameYourBitmap,(int)(nameYourBitmap.getWidth()*0.8), (int)(nameYourBitmap.getHeight()*0.8), true);

请参阅:How to resize Image in Android?

对于XML,scaleDrawables定义了scale属性,它们可以扩展另一个drawable。请参阅此开发者网站:https://developer.android.com/guide/topics/resources/drawable-resource.html#Scale