封装到 HMSearchBar.h / .m

#import <UIKit/UIKit.h>

@interface HMSearchBar : UITextField
+ (instancetype)searchBar;
@end
#import "HMSearchBar.h"

@implementation HMSearchBar

- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// 设置背景
self.background = [UIImage resizedImage:@"searchbar_textfield_background"]; // 设置内容 -- 垂直居中
self.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; // 设置左边显示一个放大镜
UIImageView *leftView = [[UIImageView alloc] init];
leftView.image = [UIImage imageWithName:@"searchbar_textfield_search_icon"];
leftView.width = leftView.image.size.width + ;
leftView.height = leftView.image.size.height;
// 设置leftView的内容居中
leftView.contentMode = UIViewContentModeCenter;
self.leftView = leftView; // 设置左边的view永远显示
self.leftViewMode = UITextFieldViewModeAlways; // 设置右边永远显示清除按钮
self.clearButtonMode = UITextFieldViewModeAlways;
}
return self;
} + (instancetype)searchBar
{
return [[self alloc] init];
}
@end

控制器 调用 HMSearchBar

#import "HMDiscoverViewController.h"
#import "HMSearchBar.h" @interface HMDiscoverViewController () @end @implementation HMDiscoverViewController - (void)viewDidLoad
{
[super viewDidLoad]; HMSearchBar *searchBar = [HMSearchBar searchBar];
searchBar.width = ;
searchBar.height = ;
self.navigationItem.titleView = searchBar;
}

IOS 搜索条制作(UITextField 封装)的更多相关文章

  1. iOS 搜索条使用详解

    在ios开发中搜索条的使用挺常见的,不过之前一直没用到也没细细研究,最近做外包项目的时候刚好用到,在这里记录一下使用的过程,只要理解了原理,其实还是比较简单的!上传的图片有点大,刚好可以看清楚它的使用 ...

  2. 模仿京东顶部搜索条效果制作的一个小demo

    最近模仿京东顶部搜索条效果制作的一个小demo,特贴到这里,今后如果有用到可以参考一下,代码如下 #define kScreenWidth [UIScreen mainScreen].bounds.s ...

  3. Swift - 搜索条(UISearchBar)的用法

    1,搜索条Options属性还可设置如下功能样式: Shows Search Results Button:勾选后,搜索框右边显示一个圆形向下的按钮,单击会发送特殊事件. Shows Bookmark ...

  4. Unity跳转场景进度条制作教程(异步加载)

    Unity跳转场景进度条制作 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享 ...

  5. 三、jQuery--jQuery实践--搜索框制作

    input标签讲解 <input/>作为按钮的type属性:button.submit(后面会有二者对比分析)

  6. 使用CSS3和jQuery可伸缩的搜索条

    使用CSS3和jQuery可伸缩的搜索条 helloweba.com 作者:月光光 时间:2013-12-09 21:23 标签: CSS3 jquery 搜索条在我们网站是必不可少的,尤其是在有限的 ...

  7. 一个漂亮的DIV搜索条

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. Unity 3D 进度条制作

    我们都知道玩游戏时,第一步要加载游戏,加载游戏时我们可以做一个简单的进度条来显示游戏加载进度,应为有了进度条,游戏画面不会过于呆板. 那么我们就开始游戏的进度条制作吧! 方法一: 1,使用NGUI制作 ...

  9. Unity NGUI 血条制作

    NGUI 血条制作步骤 实现过程: 模拟血条的变化当点击按钮Button是血条会实时发生变化. 1.向Unity中导入NGUI2.6.3.unitypackage 点击create your ui 后 ...

随机推荐

  1. select随笔

    粘贴下面代码 select 美化 <!doctype html> <html lang="en"> <head> <meta charse ...

  2. arraylist和linkedlist内部的实现大致是怎样的

    1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,ArrayList优于LinkedList,因为ArrayList可以随 ...

  3. 9 Strings

    1       Strings 1.1  Strings and GStrings Groovy允许你使用2种不同类型的字符串类型,分别是java.lang.String和groovy.lang.GS ...

  4. oracle数据库的备份与还原

    转自:https://www.cnblogs.com/ylldbk/p/5613365.html 数据导出: 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daoc ...

  5. oracle 用mybatis生成主键

    oracle主键是不能像mysql一样自动管理的,需要自己手动管理,先生成,再插入. <selectKey keyProperty="id" resultType=" ...

  6. free -m命令输出详解

    free -m输出有3行: Mem:表示物理内存 -/+ buffers/cached:表示物理内存缓存 Swap:表示硬盘交换分区 其中Mem中的total.used.free.shared.buf ...

  7. DB Intro - MySQL and MongoDB

    mysql> CREATE TABLE tutorials_tbl( tutorial_id INT, tutorial_title VARCHAR(100), tutorial_author ...

  8. jemalloc报 Unsupported system page size错误

  9. TP扩展Xxtea.class.php加密解密函数用法

    http://www.coolcode.org/?action=show&id=128这里可以查到一个相关文章. 附上xiunobbs里的代码,自己加了点注释,欢迎大牛批评指正 //将数值数组 ...

  10. .NET通过PowerShell操作ExChange为用户开通邮箱教程

    转:http://www.cnblogs.com/gongguo/archive/2012/03/12/2392049.html =================================== ...