Dragueur
Dragueur can move any view with one finger ;)
Usage
Just declare a DraggableView into your layout
<com.meetic.dragueur.DraggableView
android:id="@+id/dragueur"
android:layout_width="200dp"
android:layout_height="200dp"
>
<!-- YOUR CONTENT -->
<com.meetic.dragueur.DraggableView/>
Customisation
Exit
By default DraggableView exit when percentX > 75% (of his parent width)
This value can be adjusted with setMaxDragPercentageX(float)
Rotation
draggableView.setRotationEnabled(true);
draggableView.setRotationValue(10f);
Listener
draggableView.setDragListener(new DraggableView.DraggableViewListener() {
@Override
public void onDrag(DraggableView draggableView, float percentX, float percentY) {
}
@Override
public void onDraggedStarted(DraggableView draggableView, Direction direction) {
}
@Override
public void onDraggedEnded(DraggableView draggableView, Direction direction) {
}
@Override
public void onDragCancelled(DraggableView draggableView) {
}
});
ViewAnimator
All animations of Dragueur can be overriden
draggableView.setViewAnimator(new ViewAnimator() {
@Override
public boolean animateExit(@NonNull DraggableView draggableView, Direction direction, int duration) {
return false;
}
@Override
public boolean animateToOrigin(@NonNull DraggableView draggableView, int duration) {
return false;
}
@Override
public void update(@NonNull DraggableView draggableView, float percentX, float percentY) {
}
});
Dragueur comes with ReturnOriginViewAnimator
and ExitViewAnimator
Download
Add into your build.gradle
compile 'com.meetic.dragueur:dragueur:(last version)'
Credits
A project initiated by Meetic
This project was first developed by Meetic and has been open-sourced since. We will continue working on it. We encourage the community to contribute to the project by opening tickets and/or pull requests.
Contributor: Florent Champigny
License
Copyright 2016 Meetic, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.