首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Android实现去哪儿携程地址互换效果

昨天朋友项目中有个需求让我帮忙看看怎么搞,就跟去哪儿携程买机票时点中间按钮互换出发地和目的地的效果,当时一看觉得挺简单,用补间动画,在动画完成时设置给两边各textview互换值就好,做出来后发现效果不好...,在最后互换值得时候会有闪烁,于是就用了一种较为麻烦的方法,不过效果是达到了,记录一下。...gif效果不好。 ?...内容 简单说下思路,在点击互换按钮后: 1、计算互换位置的需要的偏移量: 这里需要需要考虑的特殊地方就是左右两边有可能文字长度不一样,所以我在textview外面套了一层相对布局.画个图来说明吧.布局最外层是个水平的线性布局...textview的坐标及绘图缓存,创建镜像view,隐藏两侧的textview,这里直接看下面代码就好啦,需要注意的是Y坐标要减去状态栏高度. 3、隐藏两侧的textview,开启镜像view的属性动画,在结束时互换

64210

用JavaScript实现div的鼠标拖拽效果

一个简单的可拖动div,随着鼠标的移动,实现原理鼠标按下时根据onmousemove事件来动态获取鼠标坐标位置以此来更新div的位置,实现的前提时div要有一个定位效果,不然的话是移动不了它的。...所以这里鼠标的状态有三个,分别是 点击时鼠标按下(mousedown事件) 移动时(mousemove事件) 松开时(mouseup事件) 所以js部分有三个事件。...JS部分 var box = document.getElementsByClassName("box")[0];//获取元素 var x, y;//存储div的坐标 var isDrop = false...为了放置鼠标移动过快时间无法正确处理所以事件绑定到document上 document.onmouseup = function() { isDrop = false;//设置为false不可移动 } 现在div已经可以拖拽了...box.style.left = moveX + "px"; box.style.top = moveY + "px"; } else { return; } } 这样效果就完美实现

2.6K30
领券