Android实现按钮拖拽还原功能
具体代码如下所示:
publicclassMainActivityextendsAppCompatActivity{
privateImageButtonibOk;
privateintlastX;
privateintlastY;
privateintstartLeft;
privateintstartRight;
privateintstartTop;
privateintstartBottom;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ibOk=(ImageButton)findViewById(R.id.ib_ok);
ibOk.setOnTouchListener(newView.OnTouchListener(){
@Override
publicbooleanonTouch(Viewv,MotionEventevent){
intaction=event.getAction();
//获取手机触摸的坐标
intx=(int)event.getX();
inty=(int)event.getY();
switch(action){
caseMotionEvent.ACTION_DOWN://按下,获取小球初始的位置
startLeft=ibOk.getLeft();
startRight=ibOk.getRight();
startTop=ibOk.getTop();
startBottom=ibOk.getBottom();
lastX=x;
lastY=y;
break;
caseMotionEvent.ACTION_MOVE://移动,小球跟随手指的移动
intoffsetX=x-lastX;
intoffsetY=y-lastY;
ibOk.layout(ibOk.getLeft()+offsetX,ibOk.getTop()+offsetY,
ibOk.getRight()+offsetX,ibOk.getBottom()+offsetY);
break;
caseMotionEvent.ACTION_UP://当手指抬起时,回到小球初始的位置
ibOk.layout(startLeft,startTop,startRight,startBottom);
break;
}
returntrue;
}
});
}
}
代码解释:图一,是完整代码。按钮可以随意拖拽(X+Y轴),抬手,按钮恢复到初始位置。图二区域,按此方式可以实现横向拖拽,类似接打电话动画效果,左边接听,右边挂断。
总结
以上所述是小编给大家介绍的Android实现按钮拖拽还原功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。