从sd卡中将图像添加到android中45度的帧中

时间:2012-02-08 10:41:13

标签: android

The image

以上是图片你可以看到白色部分我需要将图像包含在SD卡的那一部分。我需要的是SD卡中的图像应该适合屏幕中的空白区域(图像应该是什么)旋转45度)。我怎样才能包含图片?

1 个答案:

答案 0 :(得分:5)

有一个例子here

import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Matrix;
import android.os.Bundle;
import android.widget.ImageView;

public class TestImages extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ImageView image = (ImageView) findViewById(R.id.test_image);
        Bitmap bMap = BitmapFactory.decodeResource(getResources(), R.drawable.test);
        Matrix mat = new Matrix();
        mat.postRotate(45);
        Bitmap bMapRotate = Bitmap.createBitmap(bMap, 0, 0, bMap.getWidth(),bMap.getHeight(), mat, true);
        image.setImageBitmap(bMapRotate);
    }
}

为了使图像居中,我会使用相对布局(我没有测试过这段代码,但我认为它应该可行):

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,  RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
image.setLayoutParams(params);