• 完美解决ScrollView嵌套ViewPager滑动失效和无法正常滑动冲突问题


    /*******************************************************************************
     * Copyright 2011, 2012 Chris Banes.
     *
     * Licensed under the Apache License, Version 2.0 (the "License");
     * you may not use this file except in compliance with the License.
     * You may obtain a copy of the License at
     *
     * http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     *******************************************************************************/
    package com.baiyi.tuan.views.pulldownview;
    
    import android.content.Context;
    import android.util.AttributeSet;
    import android.view.GestureDetector;
    import android.view.GestureDetector.SimpleOnGestureListener;
    import android.view.MotionEvent;
    import android.widget.ScrollView;
    
    /**
     * 完美解决ScrollView嵌套ViewPager滑动失效和无法正常滑动冲突问题
     * 
     * @author leict
     * 
     */
    public class VerticalScrollView extends ScrollView {
    
    	private GestureDetector mGestureDetector;
    
    	public VerticalScrollView(Context context, AttributeSet attrs) {
    		super(context, attrs);
    		mGestureDetector = new GestureDetector(context, new YScrollDetector());
    	}
    
    	@Override
    	public boolean onInterceptTouchEvent(MotionEvent ev) {
    		return super.onInterceptTouchEvent(ev)
    				&& mGestureDetector.onTouchEvent(ev);
    	}
    
    	class YScrollDetector extends SimpleOnGestureListener {
    
    		@Override
    		public boolean onScroll(MotionEvent e1, MotionEvent e2,
    				float distanceX, float distanceY) {
    			// 如果我们滚动更接*水*方向,返回false,让子视图来处理它
    			return (Math.abs(distanceY) > Math.abs(distanceX));
    		}
    	}
    
    }
    

      

  • 相关阅读:
    WP7应用开发笔记插曲 小心使用MessageBox
    WP7应用开发笔记 继承BitmapSource并使用独立存储来缓存远程的图片
    WP7应用开发笔记(10) 导航
    Bangumi 番組計劃 WP手机客户端发布
    WP7应用开发笔记(17) 提交应用
    WP7应用开发笔记(8) IP输入框控件
    从FLC中学习的设计模式系列结构型模式(2)装饰
    Windows Phone Toolkit for WP8 已经出了
    狂神说HTML笔记
    期待
  • 原文地址:https://www.cnblogs.com/xiaoyao095/p/4256804.html
Copyright © 2020-2023  润新知