文档

搜索输入框

更新时间:

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];
  • 本页导读 (0)