2013-08-22 5 views
1

Я хочу заполнить UIButton цветом, когда он коснулся. Способ может быть реализован в методе действияЗаполните UIButton цветом при попадании внутрь

- (IBAction)bocClick:(UIButton *)sender { 
    [sender setBackgroundColor:[UIColor blackColor]]; 
} 

я получить кнопку, как показано ниже

enter image description here

этот фон не достаточно для моей потребности, мне нужно иметь эффект, что-то вроде ..

enter image description here

ответ

2

Вы используете круглую rect кнопку, которая является немного сложным для у.е. stomize.

Вы можете создать кнопку пользовательского типа и использовать фоновое изображение или создать кнопку настраиваемого типа и по углам и установить фон colour слоя самостоятельно.

или вы также можете сделать с ревом: -

вы можете добавить UIView или Контрактное как этот сильфона, например: -

- (IBAction)bocClick:(UIButton *)sender { 

UILabel *lbl2=[[UILabel alloc]initWithFrame:_btn.bounds]; 
[email protected]"Button"; 
lbl2.textAlignment=UITextAlignmentCenter; 
lbl2.font=[UIFont boldSystemFontOfSize:16]; 
lbl2.backgroundColor=[UIColor redColor]; 
lbl2.layer.cornerRadius = 5; 
lbl2.layer.masksToBounds = YES; 
[sender addSubview:lbl2]; 
} 

ВЫХОД ЕСТЬ: -

enter image description here

что-то аналогичный: -

iOS - Setting UIButton background color only colors the corners

+0

может ли какой-либо способ добавить представление о раме buttton, которое мы можем получить из «sender.frame», и поместить его над кнопкой, чтобы сделать аналогичный эффект ... Мне не нужно снова прикоснуться? – Raon

+0

да, вы можете добавить представление как подпункт Button at che TouchUpInside метод –

+0

вы можете объяснить? – Raon

1

Вы просто должны установить tintColor свойство: [sender setTintColor:[UIColor redColor]];

Таким образом, вы получите цвет выделения когда TouchUpInside. Если вы также хотите изменить цвет фона, это сложнее. Затем вы должны использовать Quartz

+0

это не будет работать, я уже пробовал :( спасибо, хотя – Raon

1

Только сделать это

UIButton * bocClick = [UIButton buttonWithType: UIButtonTypeCustom];

1

попробуйте изменить кнопку «Тип» на «UiButtonTypeCustom». Пожалуйста, смотрите изображение ниже. enter image description here надеюсь, что это вам поможет.

Смежные вопросы