AUSearchTitleView 为搜索栏点击入口控件,该组件类似搜索栏,但仅支持点击,提供如下三种样式:
- AUSearchTitleStyleDefault = 0:黑色文字,适用于浅色背景。- 示例:mPaaS 全部应用页导航栏搜索入口样式。 
- AUSearchTitleStyleMiddleAlign:黑色文字,居中对齐,适用于浅色背景。- 示例:联系人页面搜索入口样式。 
- AUSearchTitleStyleContent:白色文字,适用于深色背景。- 示例:mPaaS 应用首页导航栏搜索入口样式。 
效果图

依赖
AUSearchTitleView 的依赖如下:
    AntUI(iOS)
    1.0.0.161108003457
    APCommonUI(iOS)
    1.2.0.161108102201接口说明
    typedef NS_ENUM(NSInteger, AUSearchTitleStyle) {
        AUSearchTitleStyleDefault = 0,    // 黑色文字,使用于浅色背景
        AUSearchTitleStyleMiddleAlign,    // 黑色文字,使用于浅色背景(居中对齐)
        AUSearchTitleStyleContent,        // 白色文字,适用于深色背景
};
@class AUSearchTitleView;
@protocol AUSearchTitleViewDelegate <NSObject>
@optional
// 点击搜索栏入口控件
- (void)didPressedTitleView:(AUSearchTitleView *)titleView;
// 点击搜索栏入口控件的 voice 按钮
- (void)didPressedVoiceButton:(AUSearchTitleView *)titleView;
@end
/**
 搜索栏入口控件(默认宽度占据整个屏幕)
 */
@interface AUSearchTitleView : UIView
@property(nonatomic, assign)AUSearchTitleStyle style;         //搜索背景样式,若不设置,默认为浅色背景
@property(nonatomic,strong) NSString *placeHolder;            //搜索框 placeholder,默认为“搜索”
@property(nonatomic,strong) UIColor *placeHolderColor;        //placeholder 的颜色
@property (nonatomic, weak) id<AUSearchTitleViewDelegate> delegate;
@property(nonatomic,strong) UIImage *searchIconImage;         //搜索 icon
@property(nonatomic,strong) UIColor *normalBackgroundColor;   //搜索框的背景颜色
@property(nonatomic,assign) BOOL isShowVoiceIcon;             //是否显示语音搜索 icon,默认不显示
/**
 * 搜索框距外层透明 View 的左右内边距,默认为 9。如业务需设置初始化的实例 View 与其他 View 的间距,请将内边距值考虑在内,否则视觉上会有误差
 * 说明:将初始化的实例设为 navigationItem 的 titleview 时,系统会自适应布局 titlview 与左右 item 的间距,为满足视觉需求,设置了搜索框距外层透明 View 的内边距。
 *
 * 如有特殊需求,可重设此内边距
 *
 */
@property(nonatomic,assign) CGFloat marginBetweenItem;
/**
 *  获取实例的方法
 *
 *  @param style  搜索框的style
 *
 *  @return 获取的实例
 */
- (id)initWithSearchStyle:(AUSearchTitleStyle)style;
/**
 *  默认调起全局搜索页面,若业务需自定义点击搜索框的事件,请在子类中重写此方法
 */
- (void)onClicked;
@end代码示例
- 应用于导航栏 - AUSearchTitleView *titleView = [[AUSearchTitleView alloc] initWithSearchStyle:AUSearchTitleStyleDefault]; titleView.placeHolder = @"搜索栏入口样式"; titleView.placeHolderColor = [UIColor blackColor]; titleView.normalBackgroundColor = [UIColor orangeColor]; titleView.isShowVoiceIcon = YES; titleView.delegate = self; self.navigationItem.titleView = titleView;
- 应用于普通视图 - titleView = [[AUSearchTitleView alloc] initWithSearchStyle:AUSearchTitleStyleMiddleAlign]; titleView.placeHolder = @"AUSearchTitleStyleMiddleAlign样式"; titleView.isShowVoiceIcon = YES; titleView.delegate = self; [self.view addSubview:titleView];
该文章对您有帮助吗?