zoom.setOnZoomInClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int bmpWidth = imgBmp.getWidth() ;
int bmpHeight = imgBmp.getHeight();
double scale = 1.25 ;
scaleWidth = (float) (scaleWidth* scale) ;
scaleHeight = (float) (scaleHeight * scale) ;
Matrix matrix = new Matrix() ;
matrix.postScale(scaleWidth, scaleHeight);
oldBitmap = Bitmap.createBitmap(imgBmp);
resizeBitmap = Bitmap.createBitmap(oldBitmap, 0, 0, bmpWidth, bmpHeight, matrix, true);
mSwitcher.setImageDrawable(new BitmapDrawable(resizeBitmap));
if (null != oldBitmap && !oldBitmap.isRecycled()) {
imgBmp.recycle();
}
oldBitmap = resizeBitmap ;
imgBmp = oldBitmap ;
}
}) ;
zoom.setOnZoomOutClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
int bmpWidth = imgBmp.getWidth() ;
int bmpHeight = imgBmp.getHeight();
double scale = 0.5 ;
scaleWidth = (float) (scaleWidth* scale) ;
scaleHeight = (float) (scaleHeight * scale) ;
Matrix matrix = new Matrix() ;
matrix.postScale(scaleWidth, scaleHeight);
oldBitmap = Bitmap.createBitmap(imgBmp);
resizeBitmap = Bitmap.createBitmap(oldBitmap, 0, 0, bmpWidth, bmpHeight, matrix, true);
mSwitcher.setImageDrawable(new BitmapDrawable(resizeBitmap));
if (null != oldBitmap && !oldBitmap.isRecycled()) {
imgBmp.recycle();
}
oldBitmap = resizeBitmap ;
imgBmp = oldBitmap ;
}
});
package com.webabcd.view;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Toast;import android.widget.ZoomControls;public class _ZoomControls extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); this.setContentView(R.layout.zoomcontrols); setTitle("ZoomControls"); ZoomControls zoomControls = (ZoomControls) this.findViewById(R.id.zoomControls); // setOnZoomInClickListener() - 响应单击放大按钮的事件 zoomControls.setOnZoomInClickListener(new OnClickListener() { public void onClick(View v) { Toast.makeText(_ZoomControls.this, "单击了放大按钮", Toast.LENGTH_SHORT).show(); } }); // setOnZoomOutClickListener() - 响应单击缩小按钮的事件 zoomControls.setOnZoomOutClickListener(new OnClickListener() { public void onClick(View v) { Toast.makeText(_ZoomControls.this, "单击了缩小按钮", Toast.LENGTH_SHORT).show(); } }); }}
<?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"> <!-- 放大/缩小按钮控件 --> <ZoomControls android:id="@+id/zoomControls" android:layout_width="wrap_content" android:layout_height="wrap_content"></ZoomControls></LinearLayout>
ZoomControls - 放大/缩小按钮控件
最新推荐文章于 2025-08-14 23:47:29 发布