中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在Android應用中使用堆疊滑動控件

發布時間:2020-11-27 17:13:41 來源:億速云 閱讀:269 作者:Leah 欄目:移動開發

如何在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屬性設置:

如何在Android應用中使用堆疊滑動控件

設置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應用中使用堆疊滑動控件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

吴旗县| 丹巴县| 北流市| 柯坪县| 盖州市| 宜章县| 开封市| 抚顺县| 大厂| 湖南省| 靖安县| 武安市| 会东县| 阿荣旗| 巫溪县| 弥勒县| 临猗县| 东台市| 福建省| 扶绥县| 崇左市| 东安县| 聊城市| 平原县| 扎兰屯市| 海阳市| 宝清县| 寿阳县| 乌鲁木齐县| 中宁县| 米泉市| 涟源市| 临沭县| 巴青县| 罗山县| 卓尼县| 津市市| 成安县| 江北区| 常州市| 大方县|