使用 Swift 编写的酷炫动画音乐指示器视图。
ESTMusicIndicator 是在 iOS 8 中实现 NAKPlaybackIndicatorView 的 Swift 版本。
- 本人著作的书籍《Laravel 入门教程》已正式发布,有兴趣的朋友可点击 此处 作进一步了解。
你可能对我的其他项目感兴趣
- PHPHub-iOS PHPHub for iOS 是适用于 PHPHub 的通用 iPhone 和 iPad 应用。
- ESTMusicPlayer 一个精致简单的 iOS 音乐播放器。
- ESTCollectionViewDropDownList iOS 中下拉标签列表视图的演示实现。
- Hodor 一个快速本地化您的 iOS 应用的简单方案。
要求
- 运行 iOS 8.0+ 的 iPhone/iPad
- Xcode 7.0 或更高版本
截图
运行演示
$ open Example/ESTMusicIndicator.xcodeproj
安装
CocoaPods
CocoaPods 是 Cocoa 项目的依赖管理器。
CocoaPods 0.36 版本增加了对 Swift 和嵌入式框架的支持。您可以使用以下命令安装:
$ gem install cocoapods
要将 ESTMusicIndicatorView 集成到您的 Xcode 项目中使用 CocoaPods,请在您的 Podfile 中指定它
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'ESTMusicIndicator'
然后,运行以下命令
$ pod install
您可以访问 此链接 了解有关如何使用 CocoaPods 的更多信息。
手动
- 克隆此项目或下载它。
- 将 Classes 文件夹拖放到您的工作区中。
用法
简单示例
let indicator = ESTMusicIndicatorView.init(frame: CGRect.zero)
indicator.tintColor = .red
indicator.sizeToFit()
view.addSubview(indicator)
初始时,state
属性是 ESTMusicIndicatorViewStateStopped,而 hidesWhenStopped
属性是 YES。因此,此时视图是隐藏的。
视图出现,并且条杠开始动画。
indicator.state = .playing;
条杠停止动画并变为空闲状态。
indicator.state = .paused;
视图变为隐藏。
indicator.state = .stopped;
您可以使用 ESTMusicIndicatorView 在代码和 Storyboard 中,并且它与 Auto Layout 和基于 frame 的布局都很好地配合工作。
支持自动布局的代码
let indicator = ESTMusicIndicatorView.init(frame: CGRect.zero)
indicator.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(indicator)
然后,添加一些定位布局约束。注意,通常您不需要添加尺寸约束,因为 ESTMusicIndicatorView 有固有内容尺寸。它将自动调整大小以适应其内容。
基于框架布局的代码
let indicator = ESTMusicIndicatorView.init(frame: CGRect.zero)
view.addSubview(indicator)
indicator.sizeToFit() // Resize itself to fit its content.
自定义
颜色
可以通过设置视图或其祖先视图的 tintColor
属性(UIView
)来更改条的颜色。
尺寸
通常,视图可以通过以下方式自动调整大小以适应其内容:
- 在自动布局中取消对尺寸约束的使用,因为它具有固有内容尺寸。
- 在基于框架的布局中调用
sizeToFit
。
或者如果您显式指定大小,条将被放置在视图的中心。
联系
如果您发现任何问题,可以在Twitter上给我发消息或在微博上关注我。
贡献
感谢您对Hodor项目的贡献兴趣! greatly appreciate your ideas for improving this app. 要提交补丁是提交 Incident request. 我将尽我所能尽快回复您。如果您发现错误或有问题,也可以提交新的GitHub问题。
感谢
许可
版权 (c) 2017-2018 Paul King
在MIT许可证下发布