2015-09-11 5 views
1

Iam пытается получить значок UISearchBar по умолчанию (увеличительное стекло) для установки в другой UIButton.iOS получить значок UISearchBar по умолчанию для UIButton

PS: Я не хочу использовать png, скачанный откуда-то, я хочу использовать по умолчанию.

FUNC, чтобы добавить кнопку с пользовательским изображением, чтобы показать некоторые примеры:

func addRightNavigationButton(){ 
    let buttonBack: UIButton = UIButton.buttonWithType(UIButtonType.Custom) as! UIButton 
    buttonBack.frame = CGRectMake(0, 0, 30, 33) 
    buttonBack.setImage(UIImage(named:"search.png"), forState: UIControlState.Normal) 
    buttonBack.addTarget(self, action: "barButtonItemClicked:", forControlEvents: UIControlEvents.TouchUpInside) 
    var rightBarButtonItem: UIBarButtonItem = UIBarButtonItem(customView: buttonBack) 
    self.navigationItem.setRightBarButtonItem(rightBarButtonItem, animated: false) 
} 

ответ

2

В Objective-C:

UIBarButtonItem *searchItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSearch target:self action:@selector(searchButtonItemClicked:)]; 
[self.navigationItem setRightBarButtonItem:searchItem animated:FALSE]; 

В Swift 1.2:

let searchItem : UIBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Search, target: self, action: "searchButtonItemClicked:") 
self.navigationItem.rightBarButtonItem = searchItem; 
+0

Спасибо @Nishant я попытался с быстрым, но Xcode говорит, что не может найти "UIBarButtonSystemItemSearch", вы можете предоставить фрагмент кода в быстрой – firetrap

+0

Sure. Я обновил свой ответ быстрым кодом. Пожалуйста, проверьте. – Nishant

+0

Еще раз спасибо, как только вы ответите, я понимаю, как это сделать, но спасибо. извините за вопрос noob i'am парень Android, начиная с iOS, поэтому иногда сложно переключиться с Android-структуры на iOS – firetrap

0

Обновление для Swift 3

let searchBtn : UIBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.search, target: self, action: #selector(self.searchFunction)) 
self.navigationItem.rightBarButtonItem = searchBtn; 
Смежные вопросы