YHDragContainer-Swift 0.6.0

YHDragContainer-Swift 0.6.0

yinhe维护。



  • liujunliuhong

YHDragContainer

高度还原类似探探等社交应用的滑牌效果。(Objective-C + Swift)

为什么写这个库?

由于项目原因,我经常需要用到滑牌效果。最初,我也是在网上寻找各种第三方库,也确实找到了一些,但都不是很满意,要么某些我想要的功能没有,要么就是感觉滑牌效果不好,要么就是存在一些Bug,导致我需要改动源代码。这样折腾了几次之后,我决定自己写一个,因此就有了这个库。

与其他三方库对比

我参考了一些其他开源库,这给了我很多灵感,在此表示感谢。
CCDraggableCard
QiCardView
但是我觉得这些开源库存在一些不足之处
CCDraggableCard: 只是对卡片的宽度做了缩放,没有对高度做缩放;另外,其还可以滑动和点击,但没有显示在最顶部的卡片,而且其没有提供当前滑动索引的方法,并且其属性在框架内部写死了,不能灵活配置。之前在使用的时候,由于这些原因导致我改动了很多源代码。
QiCardView: 没有提供卡片的点击事件,并且在滑动过程中没有对下层卡片做处理。综合上述原因,我决定自己写一个扩展性好,可以灵活配置各种属性的滑牌库。
与其他同类三方库对比的优点:

  • 可以无限滑动
  • 可以上下左右滑动
  • 滑牌属性可以自由定制
  • 通过数据源的方式来控制滑牌,内存占用低
  • 代理丰富,可以根据自己的需要来选择合适的代理

即将加入的功能

暂无

效果预览

安装

手动

  • OC Clone代码,将OC Demo中的Sources文件夹拖入项目,#import "YHDragCardContainer.h",即可使用
  • Swift Clone代码,将Swift Demo中的Sources文件夹拖入项目,#import "YHDragCardContainer.h",即可使用

CocoaPods

  • OC
pod 'YHDragContainer'
  • Swift
pod 'YHDragContainer-Swift'

如果提示未找到,请先执行pod repo update,再执行pod install

使用

  • 👉OC(具体使用方法请参考Demo,以及框架中的注释,描述得很详细)
YHDragCardContainer *card = [[YHDragCardContainer alloc] initWithFrame:CGRectMake(50, [UIApplication sharedApplication].statusBarFrame.size.height+44+40, self.view.frame.size.width - 100, 400)];
card.delegate = self;
card.dataSource = self;
card.minScale = 0.9;
card.removeDirection = YHDragCardRemoveDirectionHorizontal;
[self.view addSubview:card];
  • 👉Swift(具体使用方法请参考Demo,以及框架中的注释,描述得很详细)
let card = YHDragCard(frame: CGRect(x: 50, y: UIApplication.shared.statusBarFrame.size.height + 44.0 + 40.0, width: self.view.frame.size.width - 100 , height: 400))
card.dataSource = self
card.delegate = self
card.minScale = 0.9
card.removeDirection = .horizontal
self.view.addSubview(card)

更新记录(倒叙)

3、(2019.10.08)

####### OC 0.6.0版本

  • OC版本重构,优化代码

####### Swift 0.1.0版本

  • 增加Swift版本

2、OC 0.5.0版本(2019.6.20)

  • 增加禁用拖动手势的功能

1、OC 0.4.0版(2019.6.13)

  • 增加撤销功能
  • 增加向上滑动和向下滑动的回调

补充

本仓库将持续优化,使用过程中如有建议或问题,欢迎提交issue,或通过邮件[email protected]联系我
喜欢就star❤️一下吧