Giter Site home page Giter Site logo

pysearch's Introduction

PYSearch

Build Status Pod Version Pod Platform Pod License

  • 🔍 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

效果图

支持哪些风格

热门搜索风格



搜索历史风格



如何使用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.

pysearch's People

Contributors

ko1o avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.