zoukankan      html  css  js  c++  java
  • Android 图片缩放

    以下演示将一个ImageView的高度设置为两倍:

    布局文件main.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:orientation="vertical"
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
            >
    
        <ImageView
                android:id="@+id/image1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                />
    
        <ImageView
                android:id="@+id/image2"
                android:layout_marginTop="30dp"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                />
    </LinearLayout>

    Activity:

    package com.example.imageResize;
    
    import android.app.Activity;
    import android.graphics.*;
    import android.os.Bundle;
    import android.widget.ImageView;
    
    public class MyActivity extends Activity {
        private ImageView imageView1;
        private ImageView imageView2;
    
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
    
            this.imageView1 = (ImageView) findViewById(R.id.image1);
            this.imageView2 = (ImageView) findViewById(R.id.image2);
    
            //从一个文件中获取bitmap对象
            Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
            imageView1.setImageBitmap(bitmap);
    
            //创建一个新的bitmap
            Bitmap bitmap2 = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight()*2, bitmap.getConfig());
            //创建这个图片的画板
            Canvas canvas = new Canvas(bitmap2);
    
            Paint paint = new Paint();
            paint.setColor(Color.BLACK);
    
            Matrix matrix = new Matrix();
            matrix.setScale(1,2);
    
            //以之前的bitmap作为模板,长度不变,高度变为两倍
            canvas.drawBitmap(bitmap,matrix,paint);
    
            imageView2.setImageBitmap(bitmap2);
        }
    }
  • 相关阅读:
    网友心得 说说.NET中的反射(转帖)
    javascript的函数(转)
    asp.net基于窗体的身份验证
    创建ASP.NET WEB自定义控件(转)
    .net调用Oracle存储过程
    写字间里程序员
    世界四大杀毒软件调侃
    技巧/诀窍:在ASP.NET中重写URL(转)
    VS2008中JavaScript编辑调试器的秘密
    如何用C#语言构造蜘蛛程序
  • 原文地址:https://www.cnblogs.com/wuyou/p/3657445.html
Copyright © 2011-2022 走看看