一款综合(QQ 音乐、微信、美团、优酷、虎牙直播等多款 app)风格的搜索控制器

PYSearch

GitHub地址:https://github.com/iphone5solo/PYSearch
项目作者:CoderKo1o

  • 🔍 An elegant search controller for iOS.
  • 🔍 iOS 中一款优雅的搜索控制器。

Features

  • 支持多种热门搜索风格
  • 支持多种搜索历史风格
  • 支持多种搜索结果显示模式
  • 支持搜索建议
  • 支持搜索历史(记录)缓存
  • 支持使用delegate 或者 block 完成搜索时的回调
  • 支持CocoaPods
  • 支持iPhone & iPad及其横竖屏适配

Requirements

  • iOS 7.0 or later
  • Xcode 7.0 or later

Architecture

Main

  • PYSearch
  • PYSearchConst
  • PYSearchViewController
  • PYSearchSuggestionViewController

Category

  • UIColor+PYSearchExtension
  • UIView+PYSearchExtension
  • NSBundle+PYSearchExtension

Contents

<a id="效果图"></a>效果图

<a id="支持哪些风格"></a>支持哪些风格

热门搜索风格

(img)
(img)

(img)
(img)

(img)
(img)

(img)
(img)

(img)
(img)

(img)
(img)

搜索历史风格

(img)

(img)

(img)

(img)

(img)

<a id="如何使用PYSearch"></a>如何使用PYSearch

  • 使用CocoaPods:
    • pod "PYSearch"
    • 导入主头文件#import <PYSearch.h>
  • 手动导入:
    • PYSearch文件夹中的所有文件拽入项目中
    • 导入主头文件#import "PYSearch.h"

<a id="具体使用(详情见示例程序PYSearchExample)"></a>具体使用(详情见示例程序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.navigationController pushViewController:[[UIViewController alloc] init] animated:YES];
    }];
    // 3. 跳转到搜索控制器
    UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:searchViewController];
    [self presentViewController:nav  animated:NO completion:nil];

<a id="自定义PYSearch"></a>自定义PYSearch

通过设置searchViewContoller的对象属性值即可修改

  • 设置热门搜索风格(默认为PYHotSearchStyleNormalTag)
    // 设置热门搜索为彩色标签风格
    searchViewController.hotSearchStyle = PYHotSearchStyleColorfulTag;
  • 设置搜索历史风格(默认为PYSearchHistoryStyleCell)
    // 设置搜索历史为带边框标签风格
    searchViewController.searchHistoryStyle = PYSearchHistoryStyleBorderTag;
  • 设置搜索结果显示模式(默认为PYSearchResultShowModePush)
    // 设置搜索模式为内嵌
    searchViewController.searchResultShowMode = PYSearchResultShowModeEmbed;
  • 隐藏搜索建议(默认为:NO)
    // 隐藏搜索建议
    searchViewController.searchSuggestionHidden = YES;

<a id="期待"></a>期待

  • 如果您在使用过程中有任何问题,欢迎issue me! 很乐意为您解答任何相关问题!
  • 与其给我点star,不如向我狠狠地抛来一个BUG!
  • 如果想要参与这个项目的维护或者有好的设计风格,欢迎pull request!
  • 如果您想要更多的接口来自定义或者建议/意见,欢迎issue me!我会根据大家的需求提供更多的接口!
  • 如果您在使用中觉得略有不适,欢迎联系我QQ:499491531,希望一起完善此项目,让它变成更强大,能够满足大多数用户的需求!

Licenses

All source code is licensed under the MIT License.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容