PYSearch
GitHub 地址:https://github.com/iphone5solo/PYSearch
- An elegant search controller for iOS.
- iOS 中一款优雅的搜索控制器。
Features
- 支持多种热门搜索风格
- 支持多种搜索历史风格
- 支持搜索建议
- 支持搜索历史(记录)缓存
- 支持使用 delegate 或者 block 完成搜索时的回调
- 支持 CocoaPods
Requirements
- iOS 7.0 or later
- Xcode 7.0 or later
Architecture
Main
PYSearchPYSearchConstPYSearchViewControllerPYSearchSuggestionViewController
Category
UIColor+PYExtensionUIView+PYExtension
效果图

支持哪些风格
热门搜索风格

搜索历史风格

如何使用 PYSearch
- 使用 CocoaPods:
pod "PYSearch"- 导入主头文件
#import <PYSearch.h>
- 手动导入:
- 将
PYSearch文件夹中的所有文件拽入项目中 - 导入主头文件
#import "PYSearch.h"
- 将
具体使用(详情见示例程序 PYSearchExample )
// 1. 创建热门搜索数组
NSArray *hotSeaches = @[@"Java", @"Python", @"Objective-C", @"Swift", @"C", @"C++", @"PHP", @"C#", @"Perl", @"Go", @"JavaScript", @"R", @"Ruby", @"MATLAB"];
// 2. 创建搜索控制器
PYSearchViewController *searchViewController = [PYSearchViewController searchViewControllerWithHotSearches:hotSeaches searchBarPlaceholder:@"搜索编程语言" didSearchBlock:^(PYSearchViewController *searchViewController, UISearchBar *searchBar, NSString *searchText) {
// 开始(点击)搜索时执行以下代码
// 如:设置搜索结果控制器标题
searchViewController.searchResultController.title = @"PYSearchResultController";
}];
// 3. 跳转到搜索控制器
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:searchViewController];
[self presentViewController:nav animated:NO completion:nil];
自定义 PYSearch
通过设置 searchViewContoller 的对象属性值即可修改
- 设置热门搜索风格(默认为 PYHotSearchStyleNormalTag )
// 设置热门搜索为彩色标签风格
searchViewController.hotSearchStyle = PYHotSearchStyleColorfulTag;
- 设置搜索历史风格(默认为 PYSearchHistoryStyleCell )
// 设置搜索历史为带边框标签风格
searchViewController.searchHistoryStyle = PYSearchHistoryStyleBorderTag;
- 设置搜索结果显示模式(默认为 PYSearchResultShowModePush )
// 设置搜索模式为内嵌
searchViewController.searchResultShowMode = PYSearchResultShowModeEmbed;
- 隐藏搜索建议(默认为: NO )
// 隐藏搜索建议
searchViewController.searchSuggestionHidden = YES;
期待
- 如果您在使用过程中有任何问题,欢迎 issue me! 很乐意为您解答任何相关问题!
- 与其给我点 star ,不如向我狠狠地抛来一个 BUG !
- 如果想要参与这个项目的维护或者有好的设计风格,欢迎 pull request !
- 如果您想要更多的接口来自定义或者建议 /意见,欢迎 issue me !我会根据大家的需求提供更多的接口!
Licenses
All source code is licensed under the MIT License.