java滑动窗体动画_GitHub - java02014/SwipeCardView: 一个带渐变层叠动画的左右滑动效果(类似于探探左右刷脸)...

SwipeCardView是一个基于Diolor Swipecards改进的控件,增加了滑动渐变层叠动画,提供类似探探的左右滑动刷脸体验。使用包括XML配置和Java代码,支持FlingListener和ItemClickListener回调方法。
摘要由CSDN通过智能技术生成

SwipeCardView

SwipeCard效果是基于Diolor的Swipecards控件改进实现,通过添加了滑动渐变层叠动画,达到更佳的滑动刷脸体验。

thanks Diolor Swipecards

Screenshot

ezgif.com-1.gif

Usage

XML配置:

android:id="@+id/swipe_view"

android:layout_width="match_parent"

android:layout_height="match_parent"

swipe:min_adapter_stack="4"

swipe:max_visible="4"

swipe:y_offset_step="28dp"/>

Java Code:

核心用法(即AdapterView的用法)

swipeView = (SwipeFlingAdapterView) findViewById(R.id.swipe_view);

//swipeView.setIsNeedSwipe(true);// 是否开启swipe滑动效果,当不调用此方法设置时,默认开启。

swipeView.setFlingListener(this);

swipeView.setOnItemClickListener(this);

onFlingListener的回调方法

@Override

public void removeFirstObjectInAdapter() {

adapter.remove(0);

}

@Override

public void onLeftCardExit(Object dataObject) {

AppToast.show(this, "swipe left card");

}

@Override

public void onRightCardExit(Object dataObject) {

AppToast.show(this, "swipe right card");

}

@Override

public void onAdapterAboutToEmpty(int itemsInAdapter) {

if (itemsInAdapter == 3) {

loadData();

}

}

OnItemClickListener的回调方法

@Override

public void onItemClicked(MotionEvent event, View v, Object dataObject) {

if (v.getTag() instanceof ViewHolder) {

int x = (int) event.getRawX();

int y = (int) event.getRawY();

ViewHolder vh = (ViewHolder) v.getTag();

View child = vh.portraitView;

Rect outRect = new Rect();

child.getGlobalVisibleRect(outRect);

if (outRect.contains(x, y)) {

AppToast.show(this, "click 大图");

} else {

outRect.setEmpty();

child = vh.collectView;

child.getGlobalVisibleRect(outRect);

if (outRect.contains(x, y)) {

AppToast.show(this, "click 关注");

}

}

}

}

也可参考Swipecards,两者用法基本一致。

About me

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值