论坛首页 移动开发技术论坛

[原创] 如何在android中实现swipe的手势功能及页面拖动动画

浏览 25005 次
该帖已经被评为良好帖
作者 正文
   发表时间:2009-04-23  
lordhong大哥 你好
我想问一下 这个程序如何结合ScrollView使用
我在程序中如果加上ScrollView 手势的功能就没有了
请指教 谢谢
0 请登录后投票
   发表时间:2009-04-23  
ScrollView自身对onTouch这些event有捕捉的.
你看看能不能override它的一些onTouch功能
1 请登录后投票
   发表时间:2009-04-24   最后修改:2009-04-24
lordhong 写道
ScrollView自身对onTouch这些event有捕捉的.
你看看能不能override它的一些onTouch功能


其实我是想实现textview横向翻页的。自己瞎写了点代码总算实现了,谢谢您的帮助
tv.setOnTouchListener(new OnTouchListener() {
			float x_down = -1;
			float x_up = -1;
			float f_down = -1;
			float f_up = -1;

			public boolean onTouch(View v, MotionEvent event) {

				if (event.getAction() == MotionEvent.ACTION_DOWN) {
					x_down = event.getRawX();
					if (x_down != -1) {
						f_down = x_down;
					}
				}
				if (event.getAction() == MotionEvent.ACTION_UP) {
					x_up = event.getRawX();
					if (x_up != -1) {
						f_up = x_up;
					}
				}
				if (x_up != -1 && x_down != -1) {
					
					System.out.println(f_down + "     " + f_up);

					if (f_down - f_up > 50) {
						System.out.println("上一页");
					} else if (f_down - f_up < -50) {
						System.out.println("下一页");
					}
					f_down = -1;
					f_up = -1;
					x_down = -1;
					x_up = -1;
				}
				return true;
			}
		});


java新手 见笑了
0 请登录后投票
   发表时间:2009-04-24  
^_^ 不错, 大家互相学习, 呵呵

横向翻页的话用ViewFlipper这个东西, 很好用的, 我的这个贴的源码里有.
0 请登录后投票
   发表时间:2009-04-25  
lordhong 写道
^_^ 不错, 大家互相学习, 呵呵

横向翻页的话用ViewFlipper这个东西, 很好用的, 我的这个贴的源码里有.


您的这个例子我学习了 但是横向翻页的话 就不能有滚动条了 
0 请登录后投票
   发表时间:2009-04-27  
lordhong 写道
flygo 写道
终于可以发帖了,真是等了好久了,每次注册一个帐号都要等一天才能发帖,但后来又忘了帐号。真是晕。我每天几乎会来看一下,今天我也回个帖。我可是冲着lordhong来的哦。看了你的很多帖子,非常的不错,也感谢你给我们提供好的资料。但移动的这个版块现在有点冷清的,我相信以后会火的,我也会,我因为最近也想搞移动方面的开发,我本来是做j2ee的,但是我所在公司是做移动应用的,感觉自己是在给他们做陪衬的,而且他们是用c++做的开发,也瞧不起java,晕死,心里不爽啊,的确在操作比效底层东西上面java还是不行,速度也的确有点慢。最近有空在看c++,想着这个还是比效有用,计算机上和手机上都可做开发,而且经久不衰的,java这两年不行了,真是成白菜价了,所以也想往 C/c++ 这个方向发展,但自己还一直在犹豫,不知道具体的方向,手机的平台也多。


我也终于可以发帖了... 这几天连续做了好几次脑残测试... Orz...

就冲你是冲我来的... 我就回答下... 一般人... 我不告诉的... 

你公司具体是做什么的? embedded linux吗?  一般这些只用到C, C++反而较少, 太底层了.
android基本上都是通过JNI(Java Native Interface)来call这些C的库.  对于我们新手来说, 起步是挺困难的.
我们可以先从Android的代码开始看, 由浅入深, 慢慢深入到C方面.  这需要一个过程, 要有耐心和恒心.

不过如果你可以精通android的源码的话, 已经是大牛一只了.  我最近开始看了下android的源码, 那个打击啊... 人与人的差距... 真大啊~~~~~~ 

我也看了一些android的源码,感觉没您这么深刻啊,能不能说一下,怎么写的好了,我也学习领会一下。
0 请登录后投票
   发表时间:2009-04-27  
softcat 写道

我也看了一些android的源码,感觉没您这么深刻啊,能不能说一下,怎么写的好了,我也学习领会一下。

你看下homescreen那个slidingdraw那个widget, 就是主menu那个... 
0 请登录后投票
   发表时间:2009-07-09  
请教一下:
一个list里面有很多item,如联系人等,用手指向上滚动,item向上滚动,现在是最后一个item滚到底部时就不动了,但要求是最后一个滚到底部后继续向上滚动一段距离后接着向下滚动到底部。
还有 trackmotionscroll方法的使用。
谢谢了
0 请登录后投票
   发表时间:2009-07-09  
skyxiaobai 写道
请教一下:
一个list里面有很多item,如联系人等,用手指向上滚动,item向上滚动,现在是最后一个item滚到底部时就不动了,但要求是最后一个滚到底部后继续向上滚动一段距离后接着向下滚动到底部。


你说的这个模式是iPhone的UI模式, android要安装android的模式来编程, 不是技术上的限制, 而是用户习惯的问题.
0 请登录后投票
   发表时间:2009-11-12  
请问楼主,怎么样才能判断目前翻到多少页了?
0 请登录后投票
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics