Floaty

Swift 5.0 Version License Platform Build Status

Floaty 是 iOS 平台上的一个简单的浮动操作按钮。(之前名为 KCFloatingActionButton)

为什么要改名?

  1. 遵循 Swift 的命名规范。
  2. KCFloatingActionButton 名字太长了。

预览

Preview gif

要求

安装

CocoaPods

use_frameworks!
pod 'Floaty', '~> 4.2.0'

Carthage

github "kciter/Floaty"

Swift Package Manager

一旦你设置好了 Swift Package,添加 Floaty 作为依赖项非常简单,只需将其添加到你的 Package.swift 文件的 dependencies 键值中。

dependencies: [
    .package(url: "https://github.com/kciter/Floaty.git", from: "4.2.1")
]

手动

要手动在应用程序中安装 Floaty,只需将 Floaty/*.swift 文件拖到你的项目中。

用法

支持 Storyboard

Storyboard support1

Storyboard support2

依赖于 UIWindow。

Floaty.global.button.addItem(title: "Hello, World!")
Floaty.global.show()

Dependent on the UIWindow

依赖于 UIViewController。

let floaty = Floaty()
floaty.addItem(title: "Hello, World!")
self.view.addSubview(floaty)

Dependent on the UIViewController

使用图标

let floaty = Floaty()
floaty.addItem("Hello, World!", icon: UIImage(named: "icon")!)
self.view.addSubview(floaty)

Use icon

使用处理程序

Swift

let floaty = Floaty()
floaty.addItem("I got a handler", icon: UIImage(named: "icon")!, handler: { item in
    let alert = UIAlertController(title: "Hey", message: "I'm hungry...", preferredStyle: .alert)
    alert.addAction(UIAlertAction(title: "Me too", style: .default, handler: nil))
    self.present(alert, animated: true, completion: nil)
    floaty.close()
})
self.view.addSubview(floaty)

Use handler

使用自定义项目

let item = FloatyItem()
item.buttonColor = UIColor.blueColor()
item.title = "Custom item"
Floaty.global.button.addItem(item: item)

Use custom item

RTL 支持

你可以使用 rtlMode 属性来镜像 Floaty 按钮,以适应 RTL(从右到左)语言。

Floaty.global.rtlMode = true

Rtl Enabled Rtl Disabled

固定

你可以使用 sticky 属性。

floaty.sticky = true // sticking to parent UIScrollView(also UITableView, UICollectionView)
scrollView.addSubview(floaty)

友好点击

你可以使用 friendlyTap 属性。

fab.friendlyTap = true
scrollView.addSubview(fab)

使用默认的帧位置,现在可以点击按钮直到屏幕的右侧和右下侧。这可以防止意外地点击它后面的内容。

动画类型

Pop(弹出) Fade(淡入淡出) Slide Left(左滑动)
Pop animation gif Fade animation gif Slide left animation gif
Slide Up(向上滑动) None(无)
Slide up animation gif None animation gif

待办事项

捐赠

如果你喜欢这个开源项目,可以赞助它。😄

通过 Paypal 捐赠

许可证

MIT 许可证 (MIT)

版权所有 (c) 2015 Lee Sun-Hyoup

特此授予任何获得本软件及相关文档文件(“软件”)副本的人免费许可,不受限制地处理本软件,包括但不限于使用、复制、修改、合并、出版、分发、再许可和/或销售本软件的副本的权利,并允许向其提供本软件的人员这样做,但须遵守以下条件

上述版权声明和本许可声明应包含在本软件的所有副本或主要部分中。

本软件按“原样”提供,不提供任何形式的明示或暗示的保证,包括但不限于适销性、适用于特定目的和不侵权的保证。在任何情况下,作者或版权所有者均不对因本软件或本软件的使用或其他处理而引起的或与之相关的任何索赔、损害或其他责任承担责任,无论是在合同诉讼、侵权诉讼或其他诉讼中。