編輯:關於Android編程
本文實現Android中的圖片的縮放效果
首先設計布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <ImageView android:id="@+id/iv_1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <ImageView android:id="@+id/iv_2" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
邏輯代碼如下:
public class MainActivity extends Activity { private ImageView iv1; private ImageView iv2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv1 = (ImageView) findViewById(R.id.iv_1); iv2 = (ImageView) findViewById(R.id.iv_2); // 設置第一個bitmap的圖標 Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); iv1.setImageBitmap(bitmap1); // 新建一個bitmap Bitmap alterBitmap = Bitmap.createBitmap(bitmap1.getWidth(), bitmap1.getHeight(), bitmap1.getConfig()); // 以alterBitmap為模板新建畫布 Canvas canvas = new Canvas(alterBitmap); // 新建畫筆並設置屬性 Paint paint = new Paint(); paint.setColor(Color.BLACK); //新建矩陣並設置縮放值 Matrix matrix = new Matrix(); matrix.setValues(new float[] { 0.5f, 0, 0, 0, 1, 0, 0, 0, 1 }); //設置畫布 canvas.drawBitmap(bitmap1, matrix, paint); iv2.setImageBitmap(alterBitmap); } }
如果你對矩陣的設置不清楚,還可以使用下列api提供的方法替換上面標記部分的代碼:
matrix.setScale(0.5f, 1);
注意: 新建矩陣並設置縮放值
Matrix matrix = new Matrix();
matrix.setValues(new float[] {
0.5f, 0, 0,
0, 1, 0,
0, 0, 1
});
最後運行項目效果如下:
以上就是對Android 圖片縮放的資料整理,後續繼續補充相關知識,謝謝大家對本站的支持!
本文實例講述了Android實現將一個Activity設置成窗口樣式的方法。分享給大家供大家參考,具體如下:1.在res/value文件夾下的style.xml文件中加入
先簡單介紹一下shape的基本屬性:
Supporting Multiple ScreensAndroid runs on a variety of devices that offer different
核心類:package test.com.opengles3_1;import android.opengl.GLES20;import android.opengl.M