MLQuestionCheck
Swift 项目的检查组件
要求
- iOS 10.0+ / tvOS 12.0+
- Xcode 10.0+
安装
依赖管理器
CocoaPods
CocoaPods 是 Cocoa 项目的依赖管理器。您可以使用以下命令安装它:
$ gem install cocoapods
要使用 CocoaPods 将 MLQuestionCheck 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
pod 'MLQuestionCheck', '~> 1.1.3'
然后,运行以下命令:
$ pod install
Carthage
Carthage 是一个去中心化的依赖管理器,它自动化了将框架添加到您的 Cocoa 应用程序的过程。
您可以使用以下命令使用 Homebrew 安装 Carthage:
$ brew update
$ brew install carthage
要使用 Carthage 将 MLQuestionCheck 集成到您的 Xcode 项目中,请在您的 Cartfile
中指定它
github "micheltlutz/MLQuestionCheck" ~> 1.1.3
Swift 包管理器
要将 MLQuestionCheck 作为 Swift 包管理器 包使用,请在您的 Package.swift 文件中添加以下内容。
// swift-tools-version:4.1
import PackageDescription
let package = Package(
name: "HelloMLQuestionCheck",
dependencies: [
.package(url: "https://github.com/micheltlutz/MLQuestionCheck.git", .upToNextMajor(from: "1.1.3"))
],
targets: [
.target(name: "HelloMLQuestionCheck", dependencies: ["MLQuestionCheck"])
]
)
手动
如果您不想使用上述任何依赖项管理器,可以直接将MLQuestionCheck集成到您的项目中。
Git子模块
- 打开终端,使用
cd
命令进入您的顶级项目目录,如果您尚未将项目初始化为Git仓库,请运行以下命令
$ git init
- 通过运行以下命令将MLQuestionCheck添加为git 子模块
$ git submodule add https://github.com/micheltlutz/MLQuestionCheck.git
$ git submodule update --init --recursive
-
打开新的
MLQuestionCheck
文件夹,并将MLQuestionCheck.xcodeproj
拖入到您应用Xcode项目中项目的导航栏中使用。它应该出现在您应用的蓝色项目图标下。它是在所有其他Xcode组之上还是之下并不重要。
-
在项目导航器中选择
MLQuestionCheck.xcodeproj
并验证部署目标与您的应用目标相匹配。 -
接下来,在项目导航器中(蓝色项目图标)选择您的应用项目,导航到目标配置窗口,然后在侧边栏的“目标”标题下选择您的应用目标。
-
在该窗口的顶部标签栏中,打开“通用”面板。
-
在“已嵌入的二进制文件”部分下点击
+
按钮。 -
您将看到两个不同的
MLQuestionCheck.xcodeproj
文件夹,每个文件夹中都有一个不同版本的MLQuestionCheck.framework
嵌套在Products
文件夹内。您选择哪个
Products
文件夹都无关紧要。 -
选择
MLQuestionCheck.framework
。 -
这样就完成了!
MLQuestionCheck.framework
将被自动添加为目标依赖项,作为链接框架和嵌入框架复制文件构建阶段的依赖项,这就是您在模拟器和设备上构建所需的所有内容。
已嵌入的二进制文件
- 从https://github.com/micheltlutz/MLQuestionCheck/releases下载最新版本。
- 接下来,在项目导航器中(蓝色项目图标)选择您的应用项目,导航到目标配置窗口,然后在侧边栏的“目标”标题下选择您的应用目标。
- 在该窗口的顶部标签栏中,打开“通用”面板。
- 在“已嵌入的二进制文件”部分下点击
+
按钮。 - 添加下载的
MLQuestionCheck.framework
。 - 这样就完成了!
用法
您需要在您的 Assets 中提供两个命名为以下名称的图像文件
- questionUnchecked
- questionChecked
import MLQuestionCheck
let question1 = MLQuestionCheck(question: "You are ok?")
question1.didChangeState = { checked in
print("question1 checked? \(checked)")
}
您可以更改图片名称
question1.uncheckedImageName = "new image name"
question1.checkedImageName = "new image name"
question1.setupCheck() // to change configuration buttons
或者自定义字体宽度和运行时更改文本
let questionCheckCustom = MLQuestionCheck(question: "I'm iOS Developer?")
questionCheckCustom.widthQuestion = UIScreen.main.bounds.width
questionCheckCustom.font = UIFont.boldSystemFont(ofSize: 17)
questionCheckCustom.fontChecked = UIFont.boldSystemFont(ofSize: 20)
questionCheckCustom.didChangeState = { isChecked in
print("questionCheck.isChecked: \(isChecked)")
}
Timer.scheduledTimer(withTimeInterval: 1.0, repeats: false) { (_) in
self.questionCheckCustom.question = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam."
}
文档
查看 文档
MLQuestionCheck 文档(76% 文档化)
贡献
欢迎提问和提交拉取请求!
待办事项
- 迁移到 Swift 4.2(感谢 @maclacerda)
- 100% 文档化
作者
Michel Anderson Lutz Teixeira @michel_lutz
贡献
许可证
MLQuestionCheck遵循MIT许可证发布。请参阅LICENSE了解详细信息。