Как я могу сделать UIButton похожим на кнопку удаления (iphone / iPad)? - PullRequest
0 голосов
/ 10 декабря 2011

Я хочу, чтобы моя UIButton выглядела так:

enter image description here

Как мне добиться этого вида?Есть встроенная настройка или мне просто нужно будет вручную создать ее в фотошопе?

Ответы [ 3 ]

3 голосов
/ 10 декабря 2011

Один из вариантов - просто использовать изображение для фона, например:

red button gradient background image

Также есть класс GMButton, который найден на github . Вы можете установить заголовок, цвет, titleColor для каждого состояния. Просто используйте его вместо UIButton (это подкласс UIButton). С его помощью вы можете создавать кнопки, подобные этим или этим:

screenshot of buttons enter image description here

Для вашей кнопки Удалить я бы попробовал это:

GMButton* button = [GMButton buttonWithFrame:CGRectMake(18,3,284,34)];

button.titleLabel.font = [UIFont systemFontOfSize:17];

[button setTitle:@"Delete" forState:UIControlStateNormal];
[button setColor:[UIColor redColor] forState:UIControlStateNormal];
[button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];

Для создания кнопки используются 3 слоя. CAGradientLayer для скоса, CALayer для цвета и CAGradientLayer для выделения.

1 голос
/ 10 декабря 2011

Для UIButton нет встроенных настроек для достижения этой цели.Вы можете либо кодировать его самостоятельно с помощью градиентов, либо создавать собственные изображения для состояний кнопки.Единственная встроенная опция для получения этой кнопки - через UIActionSheet.

1 голос
/ 10 декабря 2011

Используйте uibutton типа custom и укажите изображение для каждого состояния.

UIButton *myDeleteButton = [UIButton buttonWithType:UIButtonTypeCustom];
[myDeleteButton setImage:[UIImage imageNamed:@"ic_button_titlebar_delete.png"]    forState:UIControlStateNormal];
[myDeleteButton setImage:[UIImage imageNamed:@"ic_button_titlebar_delete_on.png"] forState:UIControlStateSelected];

Итак, да, вам нужно использовать PhotoShop или какой-либо другой инструмент для обработки изображений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...