轻量级前端框架助力开发者提升项目效率与性能
524
2022-11-05
编辑个人信息,使用户能够拖动和排序图像顺序
Modified by Swifty
refactor the repository, easy to use with gradle import.
How to use
Add it in your root build.gradle at the end of repositories:
allprojects { repositories { ... maven { url 'https://jitpack.io' } } }
Add the dependency
dependencies { compile 'com.github.SwiftyWang.android-drag-square:dragsquareimage:1.2.3' }
get DraggablePresenter
DraggableSquareView dragSquare = (DraggableSquareView) findViewById(R.id.drag_square); contentText = (TextView) findViewById(R.id.contentText); draggablePresent = new DraggablePresentImpl(fragment, dragSquare); draggablePresent = new DraggablePresentImpl(activity, dragSquare);
need pass activity callback to DraggablePresentImpl
@Override protected void onActivityResult(int requestCode, int resultCode, Intent result) { draggablePresent.onActivityResult(requestCode, resultCode, result); }
Set customer dialog, Customer dialog must extends ActionDialog.class
draggablePresent.setCustomActionDialog(new MyActionDialog(Context));
listen image changes
dragSquare.setImageChangesListener(imageChangesListener); public interface ImageChangesListener { void onImageAdded(String uri, int index); void onImageEdited(String uri, int index); void onImageDeleted(String uri, int index); }
All public apis
SparseArray
android-drag-square
edit personal data which enables users to drag and rank image order
编辑个人资料,图片可拖拽排序。有点像可拖拽的gridView,但是会更流畅。 这个demo是探探的个人资料编辑页面,受网上一位朋友的委托,该库模仿了其拖动效果。 探探的安卓工程师,应该特别牛逼吧。因为最初时,这种拖拽效果真的无从下手。反编译探探的源代码,发现它做了很严肃的混淆处理。然后用Hierarchy Viewer看了View的层级,这才有了一点点的思路。 在代码撰写的过程中,我也踩了不少坑。细看代码深处,或许你会有一丝丝的收获吧。 当然,在最初的最初,我搜了不少的draggable gridview的仓库,可惜用起来的时候发现不够流畅、不够灵活。
截图
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~