我想要一个搜索栏,在文本字段的左侧有一个按钮,在右侧。与当前Alien Blue reddit应用程序中的搜索栏相同。
到目前为止,我最接近实现这一点的是我能够改变"取消"的文本。使用这行代码在右侧按钮。
[self.searchController.searchBar setValue:@"Hello" forKey:@"_cancelButtonText"];
但这并不是真的有用,因为我希望右侧打开不同的搜索选项,而不是取消搜索。
帮帮我____,你是我唯一的希望
答案 0 :(得分: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];
}
您可以自己定制更多视觉效果。