Android实现View拖拽跟随手指移动效果
程序员文章站
2023-12-13 22:45:52
今天想实现这个功能,但是网上搜索代码,都是利用setpadding,setmargin 等方法去实现的,这在android 4.0 以前是没问题的,但是,android 4...
今天想实现这个功能,但是网上搜索代码,都是利用setpadding,setmargin 等方法去实现的,这在android 4.0 以前是没问题的,但是,android 4.0 后系统已经提供了更简单的方法给我们用了,就是settranslationx()
和settranslationy()
。这两个是view的属性方法。现在我就用这两个方法实现一个view可以跟着手指移动拖拽的效果。代码非常非常简单:
public class dragview extends textview { float movex; float movey; public dragview(context context) { super(context); } public dragview(context context, attributeset attrs) { super(context, attrs); } @override public boolean ontouchevent(motionevent event) { switch (event.getaction()) { case motionevent.action_down: movex = event.getx(); movey = event.gety(); break; case motionevent.action_move: settranslationx(getx() + (event.getx() - movex)); settranslationy(gety() + (event.gety() - movey)); break; case motionevent.action_up: break; case motionevent.action_cancel: break; } return true; } }
总结
以上所述是小编给大家介绍的android实现view拖拽跟随手指移动效果,希望对大家有所帮助