LNTools_fyh 1.2.2

LNTools_fyh 1.2.2

付耀辉 维护。



  • 署名于
  • 付耀辉

LNTools_fyh

库的结构: LNTools_fyh 为主库,下属有 N 个子库

  1. LNImageBrowser:图片浏览器,类似于 QQ 空间的图片点击浏览,基于 KSPhotoBrowser 的二次封装
  2. LNRefresh:上拉加载下拉刷新,基于 MJRefresh 的二次封装
  3. LNViewExtension:常用的 UI 类的一些扩展。
  4. LNProgressHUD:加载框,基于 MBProgressHUD 的封装

示例

要运行示例项目,请克隆仓库,然后从 Example 目录运行 pod install

安装

如果只需使用其中一个

pod 'LNTools_fyh/LNImageBrowser'
pod 'LNTools_fyh/LNProgressHUD'
pod 'LNTools_fyh/LNRefresh'
pod 'LNTools_fyh/LNViewExtension'

如果使用了所有功能,就直接使用:

pod 'LNTools_fyh'

调用

1.LNImageBrowser:

在调用图片浏览器时,首先需要遵守一个协议:LNImageBrowserProtocol,遵守协议后还需要实现一个变量 ln_imageViewsContainer,在其 get 方法中返回你想要展示的图片的 imageView 的父视图,注意,一定要是 imageView 的父视图。例如,在变量名为 showView 的 view 上添加了五个 imageView,你想点击其中一个图片进入浏览所有图片。可以这样做

class TestVc: UIViewController, LNImageBrowserProtocol {
    
    var ln_imageViewsContainer: UIView {
        return  showView
    }
}

完成之后,每次点击图片就会进入浏览模式

还有两个可选方法,用于长按图片后的可选操作。

  1. 该方法返回值两个,defult 是默认模式,只有一个保存图片,custom 是自定义了
 @objc public enum LNLongpressMode : Int {
    case defult = 0
    case coustom
}
func ln_browserLongpressStyle() -> LNLongpressMode

2.基于第一个方法选择的custom,可在第二个方法里面进行操作

    func ln_browser(browser:UIViewController, didLongpressedAt index:NSInteger, with image:UIImage)

2.LNProgressHUD

这是一个对UIViewcontroller的扩展,引入之后可以在控制器中直接使用:

self.ly_showTextHub(text: "ok")

func ly_showTextHub(text: String?, autoHideDelay: TimeInterval = 0) -> Void {
        DispatchQueue.ly_mbph_runInMain {
            self.lyHud.textHud(text: text)
            self.view.addSubview(self.lyHud)
            self.lyHud.progress = 0.5
            self.lyHud.show(animated: true, autoHideDelay: autoHideDelay)
        }
    }
    
    func ly_showSuccessHud(text: String?, autoHideDelay: TimeInterval = 0) -> Void {
        DispatchQueue.ly_mbph_runInMain {
            
            self.lyHud.successHud(text: text)
            self.view.addSubview(self.lyHud)
            self.lyHud.isUserInteractionEnabled = false
            self.lyHud.show(animated: true, autoHideDelay: autoHideDelay)
        }
    }
    
    func ly_showFailureHud(text: String?, autoHideDelay: TimeInterval = 0) -> Void {
        DispatchQueue.ly_mbph_runInMain {
            self.lyHud.failureHud(text: text)
            self.view.addSubview(self.lyHud)
            self.lyHud.show(animated: true, autoHideDelay: autoHideDelay)
        }
    }
    
    func ly_hideHud(afterDelay delay: TimeInterval = 0) -> Void {
        DispatchQueue.ly_mbph_runInMain {
            self.lyHud.hide(animated: true, afterDelay: delay)
        }
    }
    
    func ly_showProgressHud(progress:CGFloat, text:String?, style:Int = 1, autoHideDelay: TimeInterval = 0)  {
        
        DispatchQueue.ly_mbph_runInMain {
            self.lyHud.progressHud(proress: progress, text: text, style: style)
            self.view.addSubview(self.lyHud)
            self.lyHud.show(animated: true, autoHideDelay: autoHideDelay)
        }
    }

3.LNViewExtension

一些常用的UI类的扩展

Author

[email protected], 付耀辉

License

LNTools_fyh遵循MIT许可协议。更多信息请参阅LICENSE文件。