# Search_Layout
**Repository Path**: houcheng-chen/Search_Layout
## Basic Information
- **Project Name**: Search_Layout
- **Description**: Android搜索功能实现
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: https://github.com/Carson-Ho/Search_Layout
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-20
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# SearchLayout
- 作者:Carson_Ho
- 概述

**注:关于该开源项目的意见 & 建议可在Issue上提出。欢迎 Star !**
## 1. 简介
一款**封装了 历史搜索记录功能 & 样式** 的`Android`自定义搜索框
>已在`Github`开源:[地址:SearchLayout](https://github.com/Carson-Ho/Search_Layout),欢迎 `Star` !

## 2. 功能介绍
### 2.1 需求场景

### 2.2 功能需求
- 功能列表

- 功能原型

### 2.3 功能示意

## 3. 特点
### 3.1 功能实用
- 该搜索框开源库具备除了历史搜索记录功能外,还具备一般的搜索框功能(如一键清空搜索框内容等等)
- 封装了 **常见的搜索框样式**(如左侧图标、返回按键等等),使用起来更加方便
### 3.2 使用简单
仅需要简单的`xml`属性配置
>下面1节会详细介绍其使用方法
### 3.3 二次开发成本低
- 本项目已在 `Github`上开源:[地址:SearchLayout](https://github.com/Carson-Ho/Search_Layout)
- 具备详细的源码分析文档:请看文章[Android开源库:手把手教你实现一个简单好用的搜索框(含历史搜索记录)](http://www.jianshu.com/p/590f00025de3)
所以,在其上做二次开发 & 定制化成本非常低。
# 4. 具体使用
该款[SearchLayout](https://github.com/Carson-Ho/Search_Layout)使用非常简单,仅需2步:
### 步骤1:导入控件库
主要有 `Gradle` & `Maven` 2种方式:
- 方式1:`Gradle`引入依赖
*build.Gradle*
```
dependencies {
compile 'com.carson_ho:SearchLayout:1.0.1'
}
```
- 方式2:`Maven`引入依赖
*pom.xml*
```
com.carson_ho
SearchLayout
1.0.1
pom
```
### 步骤2:设置搜索框样式
- 具体属性设置

- 使用示例
在`XML`文件中进行设置
*activity_main.xml*
```
```
### 步骤3:设置点击键盘上的搜索按键 & 返回按键后的操作
*MainActivity.java*
```
// 1. 初始化搜索框变量
private SearchView searchView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 2. 绑定视图
setContentView(R.layout.activity_search);
// 3. 绑定组件
searchView = (SearchView) findViewById(R.id.search_view);
// 4. 设置点击键盘上的搜索按键后的操作(通过回调接口)
// 参数 = 搜索框输入的内容
searchView.setOnClickSearch(new ICallBack() {
@Override
public void SearchAciton(String string) {
System.out.println("我收到了" + string);
}
});
// 5. 设置点击返回按键后的操作(通过回调接口)
searchView.setOnClickBack(new bCallBack() {
@Override
public void BackAciton() {
finish();
}
});
}
}
```
# 5. 完整Demo地址
[Carson_Ho的Github地址:SearchLayout](https://github.com/Carson-Ho/Search_Layout)

## 6. 源码解析
请看文章[Android开源库:手把手教你实现一个简单好用的搜索框(含历史搜索记录)](http://www.jianshu.com/p/590f00025de3)
## 7. 开源协议
`SearchLayout` 遵循 `MIT` 开源协议
## 8. 贡献代码
- 具体请看:[贡献代码说明](https://github.com/Carson-Ho/Search_Layout/blob/master/CONTRIBUTING.md)
- 关于该开源项目的意见 & 建议可在`Issue`上提出。欢迎 Star !
## 9. 版本说明
2017-08-11 v1.0.0 :基础功能上线(关键字搜索、历史搜索记录 & 一键删除功能)
# 关于作者
- ID:Carson_Ho
- 简介:CSDN签约作者、简书推荐作者、稀土掘金专栏作者
- E - mail:[carson.ho@foxmail.com](mailto:carson.ho@foxmail.com)
- Github:[https://github.com/Carson-Ho](https://github.com/Carson-Ho)
- CSDN:[http://blog.csdn.net/carson_ho](http://blog.csdn.net/carson_ho)
- 简书:[http://www.jianshu.com/u/383970bef0a0](http://www.jianshu.com/u/383970bef0a0)
- 稀土掘金:[https://juejin.im/user/58d4d9781b69e6006ba65edc](https://juejin.im/user/58d4d9781b69e6006ba65edc)