Добавьте кнопки слева и справа от панели поиска

Мне нужна панель поиска с кнопкой слева от текстового поля и справа. Идентична панели поиска в текущем приложении Alien Blue на Reddit.

Поисковая панель AlienBlue

До сих пор самое близкое, что мне нужно для достижения этого, это то, что я смог изменить текст кнопки «Отмена» с правой стороны, используя эту строку кода.

[self.searchController.searchBar setValue:@"Hello" forKey:@"_cancelButtonText"];

Но это не очень помогает, так как я хочу, чтобы правая сторона открывала различные параметры поиска, а не отменяла поиск.

Помоги мне ____, ты моя единственная надежда


person Jose    schedule 05.11.2015    source источник
comment
возможно, вам следует настроить UISearch с помощью xib или программирования. Так что вы можете установить его размер и поставить две кнопки рядом с ним.   -  person ronan    schedule 05.11.2015


Ответы (1)


Ставьте эффект на первое место

введите здесь описание изображения

//RWSearchBar.h
#define BarFrame CGRectMake(100, 20, 200, 44)

#import <UIKit/UIKit.h>

@interface RWSearchBar : UISearchBar

@end

//RWSearchBar.m
#import "RWSearchBar.h"

@implementation RWSearchBar

- (void)layoutSubviews {
    self.frame = BarFrame;
}

@end

//RWViewController.m
#import "ViewController.h"
#import "RWSearchBar.h"

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    RWSearchBar *searchBar = [[RWSearchBar alloc] init];
    [self.view addSubview:searchBar];
    CGRect aFrame = BarFrame;

    UIButton *leftBtn = [[UIButton alloc] initWithFrame:CGRectMake(aFrame.origin.x - 60, aFrame.origin.y, 60, 44)];
    leftBtn.backgroundColor = [UIColor blueColor];
    UIButton *rightBtn = [[UIButton alloc] initWithFrame:CGRectMake(aFrame.origin.x + aFrame.size.width, aFrame.origin.y, 60, 44)];
    rightBtn.backgroundColor = [UIColor yellowColor];

    [self.view addSubview:leftBtn];
    [self.view addSubview:rightBtn];
}

Вы можете настроить больше визуальных эффектов самостоятельно.

person ronan    schedule 05.11.2015