亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > iOS > 正文

仿IOS的越界回彈效果和左右滑動功能

2019-10-21 18:41:47
字體:
來源:轉載
供稿:網友

最初的本意是做一個TimeLine時間軸,到后來逐漸成為了一個側滑的自定義控件。也很感謝大家的支持,所以趁著年初有空閑,重構了當前項目。以后也會逐漸完善和維護本項目并提供maven依賴,再次感謝!

IOS,越界回彈效果,左右滑動

IOS,越界回彈效果,左右滑動

IOS,越界回彈效果,左右滑動

IOS,越界回彈效果,左右滑動

Feature

SwipeDragLayout使用ViewDragHelper來進行滑動操作,代碼少,易理解,核心代碼不過150行

使用了保留一個靜態類的方法來確保只有一個展開,并在onDetachedFromWindow方法中進行關閉操作

提供了多種自定義屬性,見下表

sample使用了DataBinding和kotlin 進行了多類型的綁定,對于了解和使用DataBinding大有益處,添加多種Type更是十分簡單,再也不用extends RecyclerView.Adapter了

自定義屬性

IOS,越界回彈效果,左右滑動

<com.ditclear.swipelayout.SwipeDragLayout        android:id="@+id/swip_layout"        android:layout_width="match_parent"        android:layout_height="60dp"        app:swipe_direction="left"        app:swipe_enable="true"        app:ios="true">      <LinearLayout          android:id="@+id/content_layout"          android:layout_width="match_parent"          android:layout_height="60dp"          android:background="#ffffff"          android:gravity="center_vertical"          android:orientation="horizontal"          android:tag="content">        <ImageView            android:id="@+id/iv_type"            android:layout_width="40dp"            android:layout_height="40dp"            android:layout_marginLeft="@dimen/activity_horizontal_margin"            android:background="@drawable/type_edit"            android:scaleType="centerInside"            android:onClick="@{(v)->presenter.onItemClick(v,item)}"            android:src="@mipmap/edit"/>        <TextView            android:id="@+id/tv_title"            android:layout_width="match_parent"            android:layout_height="match_parent"            android:ellipsize="end"            android:gravity="center_vertical|right"            android:maxLines="1"            android:paddingRight="@dimen/activity_horizontal_margin"            android:onClick="@{(v)->presenter.onItemClick(v,item)}"            android:text="@{item.content}"            android:textColor="#000000"            tools:text="this is content"/>      </LinearLayout>      <LinearLayout          android:id="@+id/menu_layout"          android:layout_width="wrap_content"          android:layout_height="wrap_content"          android:orientation="horizontal"          android:tag="menu">        <ImageView            android:id="@+id/trash"            android:layout_width="70dp"            android:layout_height="60dp"            android:background="#FF6347"            android:paddingLeft="25dp"            android:onClick="@{(v)->presenter.onItemClick(v,item)}"            android:paddingRight="25dp"            android:src="@mipmap/trash"/>        <ImageView            android:id="@+id/star"            android:layout_width="70dp"            android:layout_height="60dp"            android:background="#4cd964"            android:paddingLeft="22dp"            android:paddingRight="22dp"            android:onClick="@{(v)->presenter.onItemClick(v,item)}"            android:src="@mipmap/star"/>      </LinearLayout>    </com.ditclear.swipelayout.SwipeDragLayout>

注意:暫時只支持兩個子View,一個content,一個側滑的menu,以后會支持

回調監聽

public interface SwipeListener {    /**     * 拖動中,可根據offset 進行其他動畫     * @param layout     * @param offsetRatio 偏移相對于menu寬度的比例     * @param offset 偏移量px     */    void onUpdate(SwipeDragLayout layout, float offsetRatio, float offset);    /**     * 展開完成     * @param layout     */    void onOpened(SwipeDragLayout layout);    /**     * 關閉完成     * @param layout     */    void onClosed(SwipeDragLayout layout);  }


注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美黄色片免费观看| 久久精品99久久久久久久久| 68精品国产免费久久久久久婷婷| 亚洲爱爱爱爱爱| 日韩一级黄色av| 51ⅴ精品国产91久久久久久| 国产精品丝袜久久久久久不卡| 亚洲精品久久久久中文字幕欢迎你| 日本久久久久久| 自拍偷拍亚洲一区| 国产97在线|日韩| 这里只有精品在线观看| 欧美日韩国产影院| 日本亚洲欧美成人| 成人黄色影片在线| 亚洲最大中文字幕| 日韩精品福利网站| 国产精品视频免费在线观看| 韩国19禁主播vip福利视频| 中文日韩电影网站| 国产精品久久97| 亚洲热线99精品视频| 亚洲精品免费av| 日韩美女免费线视频| 中文字幕精品—区二区| 欧美精品精品精品精品免费| 91色琪琪电影亚洲精品久久| 久久综合久中文字幕青草| 热re91久久精品国99热蜜臀| 欧美日韩福利在线观看| 国产精品视频99| 中文字幕亚洲无线码在线一区| 91精品国产777在线观看| www.xxxx精品| 国产99视频精品免视看7| 538国产精品一区二区在线| 国产精品一区av| 日本午夜在线亚洲.国产| 日韩免费观看在线观看| 色综合色综合久久综合频道88| 久久99精品久久久久久琪琪| 福利精品视频在线| 91久久精品日日躁夜夜躁国产| 91精品国产91久久久久久最新| 视频在线观看一区二区| 国产午夜精品视频免费不卡69堂| 亚洲成色777777在线观看影院| 亚洲精品国产精品久久清纯直播| 伊人久久免费视频| 久久视频在线免费观看| 在线日韩精品视频| 日韩欧美有码在线| 成人欧美一区二区三区黑人孕妇| 日韩精品视频观看| 日韩国产精品一区| 91精品国产91久久久| 日韩免费看的电影电视剧大全| 欧美性69xxxx肥| 亚洲精品欧美日韩| 国产亚洲视频中文字幕视频| 亚洲欧美日韩中文在线| 欧美一级片久久久久久久| www.欧美精品| 久久久女人电视剧免费播放下载| 91久久在线视频| 国产精品久久久久久久久粉嫩av| 久久久亚洲网站| 国产精品久久久久久久久久ktv| 黄色一区二区在线观看| 高清亚洲成在人网站天堂| 欧美亚洲第一区| 欧美激情一区二区久久久| 亚洲高清免费观看高清完整版| 91系列在线观看| 欧美美最猛性xxxxxx| 91精品视频播放| 国产精品一区二区久久精品| 久久99久久99精品免观看粉嫩| 国产日韩欧美在线播放| 亚洲www视频| 在线亚洲欧美视频| 日韩激情第一页| 中文字幕综合在线| 中文字幕久久精品| 日韩av毛片网| 国产成人亚洲综合青青| 欧美亚洲视频在线看网址| 91中文在线观看| 美女福利视频一区| 91精品国产高清久久久久久91| 性欧美亚洲xxxx乳在线观看| 91久久国产精品91久久性色| 美日韩精品视频免费看| 欧美日韩国产成人在线| 欧美日韩美女在线| 亚洲欧洲激情在线| 国产精品美女久久久免费| 亚洲一级一级97网| 午夜精品久久久久久久99热浪潮| 亚洲欧美一区二区三区久久| 日本高清久久天堂| 日韩成人在线免费观看| 日本中文字幕久久看| 国产999视频| 国产精品入口夜色视频大尺度| 精品亚洲aⅴ在线观看| 国产精品91免费在线| 国产精品久久中文| 国产suv精品一区二区| 国产不卡av在线| 日本精品视频在线播放| 日韩欧美福利视频| 国产精品一香蕉国产线看观看| 国产精品你懂得| 久久久久久这里只有精品| 日本精品一区二区三区在线播放视频| 中文字幕在线观看日韩| 欧美性xxxxxxxxx| 91在线视频九色| 亚洲欧洲免费视频| 国产mv久久久| 日韩精品有码在线观看| 欧美日韩国产成人高清视频| 亚洲国产91精品在线观看| 成人中文字幕在线观看| 亚洲剧情一区二区| 久热精品视频在线| 日韩在线视频线视频免费网站| 国产精品精品国产| 亚洲午夜未满十八勿入免费观看全集| 欧美成人第一页| 亚洲久久久久久久久久久| 亚洲精品自拍第一页| 日本一欧美一欧美一亚洲视频| 欧美多人乱p欧美4p久久| 久久久国产精品x99av| 奇米一区二区三区四区久久| 国产精品日日做人人爱| 国产ts人妖一区二区三区| 一本色道久久综合亚洲精品小说| 日韩精品极品在线观看播放免费视频| 国产不卡av在线| 久久精品青青大伊人av| 欧美在线视频免费观看| 久久久成人的性感天堂| 国产成人精品视频在线观看| 一道本无吗dⅴd在线播放一区| 中文字幕成人精品久久不卡| 久久精品成人欧美大片古装| 久久久久久久999| 亚洲国产成人精品女人久久久| 久久免费高清视频| 国产精品 欧美在线| 国产一区二区三区中文| 欧美精品成人在线| 黑人狂躁日本妞一区二区三区| 国产精品一区二区久久久久| 亚洲一级黄色av| 亚洲**2019国产| 国产精品av在线| 国产一区二区黄| 国产精品成人一区二区三区吃奶| 久久成年人视频| 日韩成人黄色av|