您好,登錄后才能下訂單哦!
如何在Android應用中使用堆疊滑動控件?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
堆疊滑動控件,并增加以下擴展:
支持滑動方向控制
支持消失方向控制
支持嵌入到ViewPager等滑動控件
支持內嵌ListView,RecycleView等滑動控件
如何使用
xml引入StackCardsView:
<com.beyondsw.lib.widget.StackCardsView android:id="@+id/cards" android:layout_width="match_parent" android:layout_height="match_parent" app:itemHeight="340dp" app:itemWidth="340dp" android:paddingBottom="66dp" android:clipToPadding="false" />
支持的xml屬性設置:
設置adapter:
mCardsView = Utils.findViewById(root,R.id.cards); mCardsView.addOnCardSwipedListener(this); mAdapter = new CardAdapter(); mCardsView.setAdapter(mAdapter); public class CardAdapter extends StackCardsView.Adapter { private List<BaseCardItem> mItems; public void appendItems(List<BaseCardItem> items){ int size = items == null ? 0 : items.size(); if (size == 0) { return; } if (mItems == null) { mItems = new ArrayList<>(size); } mItems.addAll(items); notifyDataSetChanged(); } public void remove(int position){ mItems.remove(position); notifyItemRemoved(position); } @Override public int getCount() { return mItems == null ? 0 : mItems.size(); } @Override public View getView(int position, View convertView, ViewGroup parent) { return mItems.get(position).getView(convertView,parent); } @Override public int getSwipeDirection(int position) { //這里控制每張卡的支持滑動超過一定距離消失的方向 BaseCardItem item = mItems.get(position); return item.swipeDir; } @Override public int getDismissDirection(int position) { //這里控制每張卡的支持滑動超過一定距離消失的方向 BaseCardItem item = mItems.get(position); return item.dismissDir; } @Override public boolean isFastDismissAllowed(int position) { //這里控制每張卡的支持快速滑動消失的方向 BaseCardItem item = mItems.get(position); return item.fastDismissAllowed; } @Override public int getMaxRotation(int position) { //這里控制每張卡的最大旋轉角 BaseCardItem item = mItems.get(position); return item.maxRotation; } }
關于如何在Android應用中使用堆疊滑動控件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。