在网上找了好多下拉Scrollview图片放大的效果,结果看了一下都不太靠谱,后来自己想了一个办法解决了这个问题。跟大家分享一下。
其实就是对Scrollview下拉的监听将视图放大。不管是View还是ImageView放大就ok了。主要代码如下:
/** 手指放下的监听*/ float initTouchY=0;
mScrollView.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { //放下监听 case MotionEvent.ACTION_DOWN: initTouchY=event.getY(); break; //手指抬起监听 case MotionEvent.ACTION_UP: mSlidingPlayView.setLayoutParams(new RelativeLayout.LayoutParams(diaplayWidth,AbViewUtil.dip2px(DetailA.this, imagHeight))); break; //移动监听 case MotionEvent.ACTION_MOVE: int upY=v.getScrollY(); float touchY=event.getY(); <span style="white-space:pre"> </span>//对图片放大的处理 if(upY==0){ //scrollview在顶部 float deltaY = touchY - initTouchY;// 滑动距离 if(deltaY<80){ //重新设置控件的大小addWidth=diaplayWidth+deltaY <span style="font-family: Arial, Helvetica, sans-serif;">addHeight同理 </span><pre name="code" class="java"><span style="white-space:pre"> </span>//mSlidingPlayView我这里是幻灯播放的控件,一般可以 设置成ImageView
最后一定要记得给ImageView添加一个属性,才能实现下拉图片放大的效果
android:scaleType="centerCrop"
ScrollView下拉视图放大,布布扣,bubuko.com
原文:http://blog.csdn.net/mingyue_1128/article/details/38336049