干净闪亮的搜索栏可以完成 UISearchBar 所做的事情,但只有肮脏的黑客手段。该视图旨在解决 UISearchBar 的自定义限制。这里的区别在于,这个类没有继承UISearchBar,而是使用一个更容易使用的UITextField组成一个新的UIView对象。这些是 UISearchBar 的限制:
由于我使用 UITextField,这些限制不适用。
在 Xcode 中打开您的目标列表并选择您的项目。单击Swift Packages
选项卡,然后出现小+
图标。输入此存储库的 URL,选择您要安装的版本(通常预设即可)并确认。
由于 SHSearchBar 使用本地化资源,我从2.0.0
版本开始放弃了 CocoaPods 支持,转而使用 SPM。请通过 SPM 集成该包(见上文)。
由于 SHSearchBar 使用本地化资源,我从2.0.0
版本开始放弃了 Carthage 支持,转而支持 SPM。请通过 SPM 集成该包(见上文)。
该存储库包含一个示例项目。它显示了搜索栏的不同用例。要运行它,只需打开并运行./Example/SHSearchBarExample.xcodeproj
。下图显示了一些用例:
您可以像普通文本字段一样显示自定义占位符:
您甚至可以在搜索栏中输入文本:
哇,还有可定制的配件视图:
根据需要轻松自定义文本和取消按钮:
您可以自定义文本字段的每个角半径,以便像这样的布局变得轻松:
内部文本字段支持新的 iOS 10 'textContentMode':
(重新使用之前在Apple Maps中搜索到的地址)
您可以在 UINavigationBar 内使用搜索栏:
代码文档由 Swift Package Index 生成和托管(由 DocC 提供支持)
要发布此 Swift 包,必须执行以下步骤:
release-xyz
bash <(curl -H -s https://raw.githubusercontent.com/Blackjacx/Scripts/master/frameworks/bootstrap.sh)
以更新到最新的共享开发文件bundle update
来更新所有Ruby gemsbundle exec fastlane release framework:"SHSearchBar" version:"xyz"
来发布新版本 SHSearchBar release x.y.z ?
▸ SHSearchBar (x.y.z) successfully published
▸ ? September 2nd
▸ ? https://swiftpackageindex.com/Blackjacx/SHSearchBar
▸ ? https://github.com/Blackjacx/SHSearchBar/releases/latest
▸ ? Tell your friends!
#spm #search #ios #apple #xcode #uisearchbar #swiftpackagemanager
斯特凡·赫罗德•? @Blackjacxxx
感谢所有参与其中的人:
SHSearchBar 在 MIT 许可下可用。有关详细信息,请参阅许可证文件。