一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

CoderKo1o發表於2016-10-31

PYSearch

GitHub地址:github.com/iphone5solo…
專案作者:CoderKo1o

  • ? An elegant search controller for iOS.
  • ? iOS 中一款優雅的搜尋控制器。

Features

  • 支援多種熱門搜尋風格
  • 支援多種搜尋歷史風格
  • 支援多種搜尋結果顯示模式
  • 支援搜尋建議
  • 支援搜尋歷史(記錄)快取
  • 支援使用delegate 或者 block 完成搜尋時的回撥
  • 支援CocoaPods

Requirements

  • iOS 7.0 or later
  • Xcode 7.0 or later

Architecture

Main

  • PYSearch
  • PYSearchConst
  • PYSearchViewController
  • PYSearchSuggestionViewController

Category

  • UIColor+PYExtension
  • UIView+PYExtension

Contents

效果圖

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

支援哪些風格

熱門搜尋風格

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

搜尋歷史風格

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

一款綜合(QQ 音樂、微信、美團、優酷、虎牙直播等多款 app)風格的搜尋控制器

如何使用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.navigationController pushViewController:[[UIViewController alloc] init] animated:YES];

}];
// 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!我會根據大家的需求提供更多的介面!
  • 如果您在使用中覺得略有不適,歡迎聯絡我QQ:499491531,希望一起完善此專案,讓它變成更強大,能夠滿足大多數使用者的需求!

Licenses

All source code is licensed under the MIT License.

來源:https://juejin.im/post/581680ba2e958a00549f8a2d

相關文章