# HistorySearchModule (opens new window)

# 该组件实现搜索历史本地保存,搜索页面自定义展示。

# 说明

  • 根据不同的搜索类型保存搜索历史。
  • 提供通用搜索页面展示。
  • 根据相关协议,自定义搜索导航栏、搜索历史视图、搜索结果视图。

# 安装

在项目 Podfile 文件内添加

pod 'HistorySearchModule',:git => 'http://192.168.100.254:3000/iosteam/HistorySearchModule.git',:branch => 'gaojw'

在项目目录下执行脚本

pod install

插件即可集成至项目内

# 使用

  1. CommonSearchController (opens new window) 通用搜索页面 初始化方法
/**
 初始化方法
 @param type 历史搜索类型
 @param historyView 历史展示View
 @param resultView 搜索结果展示View
 @return 搜索页面实例
 */
- (instancetype)initWithHistorySearchType:(NSUInteger)type
                     NavigationBarBuilder:(NSObject <SearchNavigationBarProtocol> *)builder
                              HistoryView:(UIView <SearchHistoryViewProtocol> *)historyView
                               ResultView:(UIView <SearchResultViewProtocol> *)resultView;

当输入框输入变化的时候

/**
 * 搜索输入框开始输入事件block回调
 */
@property(nonatomic, copy) void (^searchBarTextFieldDidChanged)(NSString *keyword);

主动保存搜索关键字

/**
 * 保存搜索关键字
 * @param keyword 关键字
 */
- (void)saveSearchKeyword:(NSString *)keyword;

手动显示搜索结果视图/搜索历史视图

- (void)manualShowResultView;
- (void)manualShowHistoryView;

输入框输入,点击了"return"时,是否响应

/**
 *  默认NO
 *  如果设置为YES 则不做任何return 搜索事件
 */
@property (nonatomic, assign)BOOL disabledSearchReturnEvent;
  1. CommonSearchProtocol (opens new window) 搜索导航栏、搜索历史视图、搜索结果视图协议
  • SearchResultViewProtocol
/**
 * 根据搜索关键字,更新结果视图
 */
- (void)updateWithKeyword:(NSString *)keyword successBlock:(dispatch_block_t)block;
  • SearchHistoryViewProtocol
/**
 * 初始化方法
 * @param type 历史搜索类型
 */
+ (instancetype)buildWithType:(NSUInteger)type;

/**
 * 选中关键字回调
 */
@property (nonatomic, copy) void (^keywordSelectedBlock)(NSString *keyword);

/**
 * 更新UI
 */
- (void)updateUI;
  • SearchNavigationBarProtocol
+ (instancetype)build;

/**
 获取当前navigationBar
 */
- (UIView *)navigationBar;

/**
 当前textField
 */
@property (nonatomic, strong) UITextField *textField;

/**
 当前cancel button
 */
@property (nonatomic, strong) UIButton *cancelButton;

至此搜索历史组件介绍完毕。

最后更新时间: 11/24/2021, 7:45:32 AM