当前位置:编程学习 > wap >>

viewpager里面的图片如何进行手势缩放?

如题,viewpager一次是加载好多个布局啊,要手势缩放起码要得到当前的那个imageview才行。到底要怎么搞呢? --------------------编程问答-------------------- 对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。 --------------------编程问答--------------------
引用 1 楼 maclay 的回复:
对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

我想这样做啊,主要是如何得到这个imageview,现在是得不到这个imageview啊,我载入了一个布局,用一个循环把这个布局分别加入到Viewpager里面,关键是如何取出当前显示的这个imageview来进行缩放操作。 --------------------编程问答--------------------
引用 1 楼 maclay 的回复:
对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

http://blog.csdn.net/ethan_xue/article/details/7890888
大概就是这个原理。你参考下。 --------------------编程问答--------------------
引用 3 楼 maclay 的回复:
Quote: 引用 1 楼 maclay 的回复:

对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

http://blog.csdn.net/ethan_xue/article/details/7890888
大概就是这个原理。你参考下。

OnPageChangeListener 这个viewpager的监听可以得到当前页。 --------------------编程问答--------------------
引用 4 楼 maclay 的回复:
Quote: 引用 3 楼 maclay 的回复:

Quote: 引用 1 楼 maclay 的回复:

对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

http://blog.csdn.net/ethan_xue/article/details/7890888
大概就是这个原理。你参考下。

OnPageChangeListener 这个viewpager的监听可以得到当前页。

感觉搞定了80%了,ViewPager和Matrix已经揉到一起了,现在就差一点搞不定了,就差判断何时让viewpager的onInterceptTouchEvent()返回false或者super.onInterceptTouchEvent(arg0)了,感觉挺棘手的。比如我就算判断除了图片到达右边界,这个时候应该是接受滑屛的命令了。可是我就算让viewpager的onInterceptTouchEvent()返回super.onInterceptTouchEvent(arg0)也要等手离开屏幕才能接受,而不是赋值以后返回值马上就不是false了。所以这个判断还是存在问题。也不知道我说的您听明白了没有,实在不好表达。 --------------------编程问答--------------------
引用 4 楼 maclay 的回复:
Quote: 引用 3 楼 maclay 的回复:

Quote: 引用 1 楼 maclay 的回复:

对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

http://blog.csdn.net/ethan_xue/article/details/7890888
大概就是这个原理。你参考下。

OnPageChangeListener 这个viewpager的监听可以得到当前页。


而且有个很奇怪的现象,有时候即使让让viewpager的onInterceptTouchEvent()方法返回false,他依然接受滑屛的命令,就是一张放大的图片即时没有滑倒边界,我让onInterceptTouchEvent()方法返回false了,他依然执行滑屛命令,图片一边平移一边进行翻页的操作。 --------------------编程问答--------------------
引用 3 楼 maclay 的回复:
Quote: 引用 1 楼 maclay 的回复:

对你需要进行操作的imageview进行touch监听,得到收拾的数据进行计算判断等,再来进行放大缩小操作。

http://blog.csdn.net/ethan_xue/article/details/7890888
大概就是这个原理。你参考下。

貌似边界判断搞定了,只差一个获取当前显示的imageview的bitmap了。因为图片大小是一样的,我都是用第一张图片的bitmap来缩放的,要获取当前的bitmap的时候
imageView.setDrawingCacheEnabled(true);
bt = imageView.getDrawingCache();
这样写以后我重写的ImageView 的图片的居中就没了,图片到最上面去了,真是蛋疼啊,还需要时间来弄! --------------------编程问答-------------------- 楼主,这个问题 现在怎么样了? 代码可否共享 一下?
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,