Java 类android.support.design.widget.SwipeDismissBehavior 实例源码
项目:beaconloc
文件:TrackedBeaconAdapter.java
private void setupSwipe(ItemTrackedBeaconBinding beaconBinding) {
final SwipeDismissBehavior<CardView> swipe = new SwipeDismissBehavior();
swipe.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_ANY);
swipe.setListener(new SwipeDismissBehavior.OnDismissListener() {
@Override
public void onDismiss(View view) {
Log.d(Constants.TAG, "Swipe +");
}
@Override
public void onDragStateChanged(int state) {
}
});
}
项目:RxBinding
文件:SwipeDismissBehaviorObservable.java
@Override protected void subscribeActual(Observer<? super View> observer) {
if (!checkMainThread(observer)) {
return;
}
if (!(view.getLayoutParams() instanceof LayoutParams)) {
throw new IllegalArgumentException("The view is not in a Coordinator Layout.");
}
LayoutParams params = (LayoutParams) view.getLayoutParams();
final SwipeDismissBehavior behavior = (SwipeDismissBehavior) params.getBehavior();
if (behavior == null) {
throw new IllegalStateException("There's no behavior set on this view.");
}
Listener listener = new Listener(behavior, observer);
observer.onSubscribe(listener);
behavior.setListener(listener);
}
项目:RxBinding
文件:RxSwipeDismissBehaviorTest.java
@Test public void dismisses() {
((CoordinatorLayout.LayoutParams) view.getLayoutParams()).setBehavior(
new SwipeDismissBehavior());
RecordingObserver<View> o = new RecordingObserver<>();
RxSwipeDismissBehavior.dismisses(view)
.subscribeOn(AndroidSchedulers.mainThread())
.subscribe(o);
o.assertNoMoreEvents(); // No initial value.
onView(withId(1)).perform(swipeRight());
assertEquals(view, o.takeNext());
o.dispose();
onView(withId(1)).perform(swipeRight());
o.assertNoMoreEvents();
}
项目:CoordinatorExamples
文件:SwipeBehaviorExampleActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_swipe_behavior);
final SwipeDismissBehavior swipe = new SwipeDismissBehavior();
swipe.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_ANY);
swipe.setListener(new SwipeDismissBehavior.OnDismissListener() {
@Override public void onDismiss(View view) {
Toast.makeText(SwipeBehaviorExampleActivity.this,
"Card swiped !!", Toast.LENGTH_SHORT).show();
}
@Override public void onDragStateChanged(int state) {}
});
CardView cardView = (CardView) findViewById(R.id.swype_card);
LayoutParams coordinatorParams = (LayoutParams) cardView.getLayoutParams();
coordinatorParams.setBehavior(swipe);
}
项目:Mix
文件:SwipeDismissBehaviorActivity.java
private void initBehavior() {
swipeDismissBehavior = new SwipeDismissBehavior();
swipeDismissBehavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_ANY);
swipeDismissBehavior.setListener(onDismissListener);
CoordinatorLayout.LayoutParams coordinatorParams = (CoordinatorLayout.LayoutParams) findViewById(R.id.textview).getLayoutParams();
coordinatorParams.setBehavior(swipeDismissBehavior);
swipeDismissBehavior.setDragDismissDistance(0.5F);
swipeDismissBehavior.setStartAlphaSwipeDistance(0F);
swipeDismissBehavior.setEndAlphaSwipeDistance(0.5F);
swipeDismissBehavior.setSensitivity(0);
swipeDismissBehavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_START_TO_END);
}
项目:honki_android2
文件:CardViewHolder.java
public CardViewHolder(final View itemView) {
super(itemView);
userName = (TextView) itemView.findViewById(R.id.user_name);
userIcon = (ImageView) itemView.findViewById(R.id.user_icon);
image = (ImageView) itemView.findViewById(R.id.image);
card = (CardView) itemView.findViewById(R.id.card);
card.setOnClickListener(this);
// ドラッグして消えるBehaviorを取り付ける。
// スワイプする要素は、親ビューがCoordinatorLayoutである必要がある。
SwipeDismissBehavior behavior = new SwipeDismissBehavior();
behavior.setStartAlphaSwipeDistance(0.1f);
behavior.setEndAlphaSwipeDistance(0.6f);
behavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_START_TO_END);
behavior.setListener(new SwipeDismissBehavior.OnDismissListener() {
@Override
public void onDismiss(View view) {
if (listener != null) {
listener.onCardDismiss(CardViewHolder.this);
}
}
@Override
public void onDragStateChanged(int state) {
if (listener != null) {
listener.onDragStateChanged(CardViewHolder.this, state);
}
}
});
final ViewGroup.LayoutParams cardViewLayoutParams = card.getLayoutParams();
((CoordinatorLayout.LayoutParams) cardViewLayoutParams).setBehavior(behavior);
}
项目:oversnackbar
文件:OverSnackBar.java
/**
* @return if the view is being being dragged or settled by {@link SwipeDismissBehavior}.
*/
private boolean isBeingDragged() {
final ViewGroup.LayoutParams lp = mView.getLayoutParams();
if (lp instanceof CoordinatorLayout.LayoutParams) {
final CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams) lp;
final CoordinatorLayout.Behavior behavior = layoutParams.getBehavior();
if (behavior instanceof SwipeDismissBehavior) {
return ((SwipeDismissBehavior) behavior).getDragState() != SwipeDismissBehavior.STATE_IDLE;
}
}
return false;
}
项目:TopSnackbar
文件:TopSnackbar.java
/**
* @return if the view is being being dragged or settled by {@link SwipeDismissBehavior}.
*/
private boolean isBeingDragged() {
final ViewGroup.LayoutParams lp = mView.getLayoutParams();
if (lp instanceof CoordinatorLayout.LayoutParams) {
final CoordinatorLayout.LayoutParams cllp = (CoordinatorLayout.LayoutParams) lp;
final CoordinatorLayout.Behavior behavior = cllp.getBehavior();
if (behavior instanceof SwipeDismissBehavior) {
return ((SwipeDismissBehavior) behavior).getDragState()
!= SwipeDismissBehavior.STATE_IDLE;
}
}
return false;
}
项目:Account-android
文件:TSnackbar.java
@SuppressWarnings("rawtypes")
private boolean isBeingDragged() {
final ViewGroup.LayoutParams lp = mView.getLayoutParams();
if (lp instanceof CoordinatorLayout.LayoutParams) {
final CoordinatorLayout.LayoutParams cllp = (CoordinatorLayout.LayoutParams) lp;
final CoordinatorLayout.Behavior behavior = cllp.getBehavior();
if (behavior instanceof SwipeDismissBehavior) {
return ((SwipeDismissBehavior) behavior).getDragState() != SwipeDismissBehavior.STATE_IDLE;
}
}
return false;
}
项目:Droidcon-India-2015
文件:StepsDemoTopSheetBottomViewsBehavior.java
@Override
public boolean layoutDependsOn(CoordinatorLayout parent, View child, View dependency) {
if(dependency instanceof TopCardView) {
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) dependency.getLayoutParams();
params.setBehavior(swipeDismissBehavior);
swipeDismissBehavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_START_TO_END);
swipeDismissBehavior.setStartAlphaSwipeDistance(0.1f);
swipeDismissBehavior.setEndAlphaSwipeDistance(0.9f);
swipeDismissBehavior.setDragDismissDistance(0.8f);
return true;
}
return false;
}
项目:RxBinding
文件:SwipeDismissBehaviorObservable.java
Listener(SwipeDismissBehavior swipeDismissBehavior, Observer<? super View> observer) {
this.swipeDismissBehavior = swipeDismissBehavior;
this.observer = observer;
}