Splitflap

Supported Platforms Version Carthage compatible Swift Package Manager compatible Build status Code coverage status

翻页显示Splitflap 是一个易于使用的组件,用于展示可变的字母数字文本,例如机场或火车站的公共交通时刻表或一些翻页时钟上常用的那种。

要求使用方法安装贡献联系方式许可证

要求

使用方法

Hello World

第一个例子展示了使用 Splitflap 组件最简单的方法。以下是如何显示 “Hello” 文本

Hello

import Splitflap

let splitflapView        = Splitflap(frame: CGRect(x: 0, y: 0, width: 370, height: 53))
splitflapView.datasource = self

// Set the text to display by animating the flaps
splitflapView.setText("Hello", animated: true)

// MARK: - Splitflap DataSource Methods

// Defines the number of flaps that will be used to display the text
func numberOfFlapsInSplitflap(_ splitflap: Splitflap) -> Int {
  return 5
}

主题化

Splitflap 允许您通过提供 splitflap:builderForFlapAtIndex: 委托方法来单独自定义每个翻页片。

Theming

let splitflapView        = Splitflap(frame: CGRect(x: 0, y: 0, width: 370, height: 53))
splitflapView.delegate   = self
splitflapView.datasource = self

// Set the text with an emoji
splitflap.text = "Cat \u{1F63B}"

// MARK: - Splitflap Delegate Methods

// Configure the appearance for each flaps
func splitflap(_ splitflap: Splitflap, builderForFlapAtIndex index: Int) -> FlapViewBuilder {
  return FlapViewBuilder { builder in
    builder.backgroundColor = UIColor(red: 251/255, green: 249/255, blue: 243/255, alpha: 1)
    builder.cornerRadius    = 5
    builder.font            = UIFont(name: "Avenir-Black", size:45)
    builder.textAlignment   = .center
    builder.textColor       = UIColor(red: 0, green: 0, blue: 0, alpha: 0.5)
    builder.lineColor       = UIColor(red: 0, green: 0, blue: 0, alpha: 0.3)
  }
}

// MARK: - Splitflap DataSource Methods

func tokensInSplitflap(_ splitflap: Splitflap) -> [String] {
  return " Cat\u{1F63B}".characters.map { String($0) }
}

还有更多...

要了解更多信息,请查看文档和示例项目。

注意:欢迎所有贡献

安装

CocoaPods

如果尚未安装 CocoaPods,请先安装。

$ [sudo] gem install cocoapods
$ pod setup

前往您的 Xcode 项目目录,创建并编辑您的 Podfile 文件,然后添加 Splitflap

$ cd /path/to/MyProject
$ touch Podfile
$ edit Podfile
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'

use_frameworks!
pod 'Splitflap', '~> 4.1.0'

安装到您的项目中

$ pod install

从 .xcworkspace 文件(不是通常的项目文件)在 Xcode 中打开您的项目。

$ open MyProject.xcworkspace

现在您可以将 Splitflap 框架导入到您的文件中了。

Carthage

Carthage 是一个去中心化的依赖管理器,它可以自动执行向您的 Cocoa 应用程序添加框架的过程。

您可以使用 Homebrew 通过以下命令安装 Carthage

$ brew update
$ brew install carthage

要使用 Carthage 将 Splitflap 集成到您的 Xcode 项目中,请在您的 Cartfile 文件中指定它。

github "yannickl/Splitflap" >= 4.1.0

Swift Package Manager

您可以使用 Swift Package Manager 通过将正确的描述添加到您的 Package.swift 文件来安装 Splitflap

import PackageDescription

let package = Package(
    name: "YOUR_PROJECT_NAME",
    targets: [],
    dependencies: [
        .Package(url: "https://github.com/yannickl/Splitflap.git", versions: "4.1.0" ..< Version.max)
    ]
)

请注意,Swift Package Manager 仍处于早期设计和开发阶段,更多信息请查看其 GitHub 页面

手动

下载 项目并将 Splitflap 文件夹复制到您的项目中以使用它。

贡献

欢迎并鼓励贡献

联系方式

Yannick Loriot

许可证 (MIT)

版权所有 (c) 2015-至今 - Yannick Loriot

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

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

本软件按“原样”提供,不作任何明示或暗示的保证,包括但不限于适销性、特定用途的适用性和非侵权性的保证。在任何情况下,作者或版权持有人均不对任何索赔、损害或其他责任负责,无论是在合同诉讼、侵权行为或其他方面,因本软件或本软件的使用或其他交易而产生、源于本软件或与之相关。