解决在android开发中ViewPager中Gallery无法滑动问题_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 解决在android开发中ViewPager中Gallery无法滑动问题

解决在android开发中ViewPager中Gallery无法滑动问题

 2013/11/12 20:45:21  lianweikj  博客园  我要评论(0)
  • 摘要:我的是在viewpager中某个fragment中有gallery...导致无法滑动,网上找到解决方法。自定义Gallery.代码:importandroid.content.Context;importandroid.support.v4.view.ViewPager;importandroid.util.AttributeSet;importandroid.view.GestureDetector.OnGestureListener;importandroid.view
  • 标签:android 解决 view 滑动 all 问题 开发 Android开发

我的是在viewpager中某个fragment中有gallery... 导致无法滑动,网上找到解决方法自定义Gallery.

代码:

class="brush:java;gutter:true;">import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.GestureDetector.OnGestureListener;
import android.view.MotionEvent;
import android.widget.Gallery;

public class CustomGallery extends Gallery implements OnGestureListener {
	private ViewPager mPager;

	public ViewPager getmPager() {
		return mPager;
	}

	public void setmPager(ViewPager mPager) {
		this.mPager = mPager;
	}

	/**
	 * @param context
	 * @param attrs
	 */
	public CustomGallery(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}

	/**
	 * @param context
	 * @param attrs
	 *                     
	 */
	public CustomGallery(Context context, AttributeSet attrs) {
		super(context, attrs); // TODO Auto-generated constructor stub
	}

	@Override
	public boolean dispatchTouchEvent(MotionEvent ev) {
		// TODO Auto-generated method stub
		mPager.requestDisallowInterceptTouchEvent(true);
		return super.dispatchTouchEvent(ev);
	}

	@Override
	public boolean onInterceptTouchEvent(MotionEvent ev) {
		// TODO Auto-generated method stub
		mPager.requestDisallowInterceptTouchEvent(true);
		return super.onInterceptTouchEvent(ev);
	}

	@Override
	public boolean onTouchEvent(MotionEvent event) {
		// TODO Auto-generated method stub
		mPager.requestDisallowInterceptTouchEvent(true);
		return super.onTouchEvent(event);
	}
}

 

发表评论
用户名: 匿名