您的位置:首页 > 其它

Andoid_ImageView图片的缩放

2015-07-14 14:56 232 查看
public class MainActivity extends Activity {
private Button local, network;
private ImageView iv;
RelativeLayout lay;
private float now;
private float last = -1;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
init();
}

private void init() {
iv = (ImageView) findViewById(R.id.imageView);
local = (Button) findViewById(R.id.local);
network = (Button) findViewById(R.id.network);
local.setOnClickListener(l);
network.setOnClickListener(l);
lay = (RelativeLayout) findViewById(R.id.lay);
lay.setOnTouchListener(new View.OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
Log.d("TAG", "down!!!");
break;
case MotionEvent.ACTION_MOVE:
Log.d("TAG", "move!!!");
// 判断按下手指个数
if (event.getPointerCount() >= 2) {
float x = event.getX(0) - event.getX(1);
float y = event.getY(0) - event.getY(1);
now = (float) Math.sqrt(x * x + y * y);
if (last < 0) {
last = now;
} else {

if (now - last > 5) {
Log.d("TAG", "放大!");
RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) iv
.getLayoutParams();
lp.width = (int) (iv.getWidth() * 1.2);
lp.height = (int) (iv.getHeight() * 1.2);
iv.setLayoutParams(lp);
last = now;
} else if (last - now > 5) {
Log.d("TAG", "缩小!");
RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) iv
.getLayoutParams();
lp.width = (int) (iv.getWidth() * 0.8);
lp.height = (int) (iv.getHeight() * 0.8);
if (lp.width > 0.1) {
iv.setLayoutParams(lp);
} else {
lp.width = 10;
lp.height = 10;
iv.setLayoutParams(lp);
}
last = now;
}
}
}
break;
case MotionEvent.ACTION_UP:

Log.d("TAG", "up!!!");

break;
default:
break;
}
return true;
}
});
}

;
View.OnClickListener l = new View.OnClickListener() {
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.local:
iv.setImageResource(R.drawable.sword);
break;

case R.id.network:
BitmapUtils utils = new BitmapUtils(getApplicationContext());
utils.display(iv,"http://www.baidu.com/img/bd_logo1.png");
break;
}
;
}
};

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: