您的位置:首页 > 移动开发 > Android开发

Android图集的上下左右拖动及动画效果研究

2017-04-12 18:28 543 查看
看到今日头条的新闻详情图集(图集的上下左右拖动及动画效果)功能,也有个这样的新需求:

手势GestureDetector + OnTouch()事件分发+View绘制+View动画(渐变+位移)

> 手势操作GestureDetector demo - http://download.csdn.net/download/xyz_lmn/6588201
可以使用invalidate()去更新控件,如ImageView.invalidate() 实时绘制控件和动态更新控件.

android 如何实现图片的选择框上下左右移动加淡入淡出的动画效果?

android viewFipper实现图片上下左右滑动效果- http://download.csdn.net/detail/zh346807754/5867499#comment
Android图片上下左右滑动特效--Recycker实现- http://blog.csdn.net/songxin393764941/article/details/54846106
图片手势滑动,多点触摸放大缩小- http://download.csdn.net/download/jj120522/4968378
android 自定义ImageView实现图片手势滑动,多点触摸放大缩小效果- http://blog.csdn.net/jj120522/article/details/8467810
Android 触摸及手势操作GestureDetector- http://blog.csdn.net/xyz_lmn/article/details/16826669
Android 手势检测实战 打造支持缩放平移的图片预览效果(下)- http://blog.csdn.net/lmj623565791/article/details/39480503
Android三种左右滑动效果 手势识别- http://www.cnblogs.com/ok-lanyan/archive/2012/08/02/2619701.html
1.onCreate中添加GestureDetector mGestureDetector;

 //监听手势事件

mGestureDetector = new GestureDetector(this, onGestureListener);

2.//实现处理事件

OnGestureListener onGestureListener = new OnGestureListener() {

 //添加未实现的方法

};

3.重写onTouch事件

//交由手势探测接口处理触摸事件

public boolean onTouchEvent(MotionEvent event) {

return mGestureDetector.onTouchEvent(event);

}

用requestDisallowInterceptTouchEvent()方法防止viewpager和子view冲突- http://blog.csdn.net/fancylovejava/article/details/12975119
  ViewGroup.onInterceptTouchEvent(MotionEvent) - 这允许一个视图组ViewGroup 在分发给子视图时观察这些事件。

pager.requestDisallowInterceptTouchEvent(true);。ViewParent.requestDisallowInterceptTouchEvent(boolean) - 在一个父视图之上调用这个方法来表示它不应该通过onInterceptTouchEvent(MotionEvent)来捕获触摸事件。

Android中dp和px之间进行转换- http://blog.csdn.net/arui319/article/details/6777133
得到ImageView的高度和宽度 Android ???

如何获取image(ImageView)的高度和宽度?- https://zhidao.baidu.com/question/551183605.html
android之位置坐标- http://blog.csdn.net/zxc123e/article/details/41869833
> PhotoView

> 数学运算:

m = Math.sqrt(d);看看d是不是double类型或者系统自动能转化到double类型的(可以用来求勾股定理)

幂指数的运算我们就会用到Math.pow(double a,double b),返回的结果是a的b次方。

Android中利用LinearLayout动态添加控件- http://blog.csdn.net/zcpangzi/article/details/5420805
如何使用代码动态的获取和设置ImageView的宽度和高度?- http://blog.csdn.net/wulianghuan/article/details/8644144
android设置Activity背景色为透明的2种方法- http://blog.csdn.net/yuejingjiahong/article/details/6668265
android:theme="@android:style/Theme.Translucent" 

设置Activity全屏与不全屏- http://blog.csdn.net/dszgf5717/article/details/49203737
requestWindowFeature(Window.FEATURE_NO_TITLE);  

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);  

Android的Button按钮,ACTION_UP事件不触发解决方案- http://blog.csdn.net/yezhouyong/article/details/51385706
requestLayout() invalidate() postInvalidate()

使用weight 让linearlayout内部的控件居中显示- http://blog.csdn.net/u010142034/article/details/50497414
在代码里面设置组件的RelativeLayout相对位置- http://blog.csdn.net/u010142437/article/details/17963259
<未完待续>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: