側(cè)滑菜單控件ASwipeLayout怎么用-創(chuàng)新互聯(lián)

小編給大家分享一下側(cè)滑菜單控件ASwipeLayout怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),平邑企業(yè)網(wǎng)站建設(shè),平邑品牌網(wǎng)站建設(shè),網(wǎng)站定制,平邑網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,平邑網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

前言

該控件的優(yōu)點(diǎn):

1.無論是在RecyclerView,ListView,還是LinearLayout等,只要是ViewGroup用該控件都能實(shí)現(xiàn)側(cè)滑。
2.控件的手勢(shì)滑動(dòng)沖突已解決,不會(huì)出現(xiàn)嵌套到ScrollView等控件出現(xiàn)滑動(dòng)不流暢的情況
3.控件使用簡(jiǎn)單,只需要在xml外套一層該控件就好了,秒接入
4.點(diǎn)擊事件很方便,原來什么寫法就什么寫法

1.效果圖

側(cè)滑菜單控件ASwipeLayout怎么用

側(cè)滑菜單控件ASwipeLayout怎么用

2.使用方式其實(shí)挺簡(jiǎn)單的,在設(shè)計(jì)的時(shí)候,就是想著怎么簡(jiǎn)單怎么來

2.1引入庫(kù):

Step 1. Add it in your root build.gradle at the end of repositories:

allprojects {
 repositories {
  ...
  maven { url 'https://jitpack.io' }
 }
 }

Step 2. Add the dependency

 dependencies {
     implementation 'com.github.WelliJohn:ASwipeLayout:0.0.2'
 }

2.2在需要側(cè)滑的布局的根布局中添加下面這段代碼,注意注釋的地方才是可以定制的:

<?xml version="1.0" encoding="utf-8"?>
<wellijohn.org.swipevg.ASwipeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:orientation="horizontal">


  <LinearLayout
    android:id="@+id/ll_content"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#FFFFFF"
    android:orientation="horizontal">

    //在這里是實(shí)現(xiàn)你的主item的東西,根據(jù)你們的項(xiàng)目隨便添加
  </LinearLayout>

  <LinearLayout
    android:id="@+id/right_menu_content"
    android:layout_width="wrap_content"
    android:layout_height="match_parent">
 
    //在這里是實(shí)現(xiàn)右側(cè)的菜單,根據(jù)你們的項(xiàng)目隨便添加
  </LinearLayout>


</wellijohn.org.swipevg.SwipeLayout>

注意在這里ll_content,right_menu_content是一定要的,這個(gè)id對(duì)應(yīng)的布局不要自己去改變,以后有需要會(huì)放開,目前的話,一般的情況你們只需要定制主item的內(nèi)容和右側(cè)菜單欄了,在這里我也省去了定義一些額外的自定義view了,單純就是用id,來區(qū)分主item和右側(cè)的菜單。

3.因?yàn)镽ecyclerView中有復(fù)用Item的情況,針對(duì)這種情況的解決方案

因?yàn)閕tem復(fù)用會(huì)使得當(dāng)我們滑出某個(gè)menu的時(shí)候,再進(jìn)行RecyclerView的上下滑動(dòng)時(shí),會(huì)使得其他的Item也滑出了menu,這就是item復(fù)用導(dǎo)致了布局錯(cuò)亂,所以針對(duì)這類型的問題的話,我在這里已經(jīng)提供了OnSwipeStateChangeListener接口,在這里你們可以記錄下滑動(dòng)的狀態(tài),在onBindViewHolder方法里面,根據(jù)狀態(tài)來設(shè)定Item是打開menu還是關(guān)閉menu:

 @Override
  public void onBindViewHolder(ViewHolder holder, int position) {

    final Person person = mDatas.get(position);
    holder.scrollDelLl.setOpen(person.isOpen());

    holder.scrollDelLl.setOnSwipeStateChangeListener(new OnSwipeStateChangeListener() {
      @Override
      public void onSwipeStateChange(boolean open) {
        person.setOpen(open);
      }
    });

  }

如上代碼就可以解決Item復(fù)用導(dǎo)致布局錯(cuò)亂的問題了(粑粑再也不用擔(dān)心RecyclerView復(fù)用的問題了)。

4.如果你們?cè)陧?xiàng)目使用的過程中,有新的需求或者是bug的話,可以在github上提你們的需求或者issue

以上是“側(cè)滑菜單控件ASwipeLayout怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文標(biāo)題:側(cè)滑菜單控件ASwipeLayout怎么用-創(chuàng)新互聯(lián)
文章起源:http://muchs.cn/article46/dcpoeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作企業(yè)建站、全網(wǎng)營(yíng)銷推廣域名注冊(cè)、微信小程序網(wǎng)頁(yè)設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁(yè)設(shè)計(jì)公司