2017-02-20 29 views
2

Мне нужно сделать шаблон UIButton, похожий на скриншот follwing. Моя проблема в том, что я обычно устанавливаю фрейм и устанавливаю изображение в рамку кнопки. Коснитесь события получить перекрытие.Наложение совпадений на UIButton наложения

Я использую follwing код,

UIButton *button1 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button1 addTarget:self 
      action:@selector(aMethod:) 
forControlEvents:UIControlEventTouchUpInside]; 
[button1 setImage:[UIImage imageWithName:@"Triangle1.png"]]; 
button1.frame = CGRectMake(100.0, 100.0, 150.0, 150.0); 
[view addSubview:button1]; 

UIButton *button2 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button2 addTarget:self 
      action:@selector(aMethod1:) 
forControlEvents:UIControlEventTouchUpInside]; 
[button2 setImage:[UIImage imageWithName:@"Triangle2.png"]]; 
button2.frame = CGRectMake(175.0, 100.0, 150.0, 150.0);// if set X to 250 then pattern not seems 
[view addSubview: button2]; 

UIButton *button3 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[button3 addTarget:self 
      action:@selector(aMethod2:) 
forControlEvents:UIControlEventTouchUpInside]; 
[button3 setImage:[UIImage imageWithName:@"Triangle2.png"]]; 
button3.frame = CGRectMake(150.0, 260.0, 150.0, 150.0);// if set X to 250 then pattern not seems 
[view addSubview: button3]; 

Один мой старший говорит мне, что мне нужно использовать CALayer, я прочитал, но honestely я не могу понять, там питания.

Это мой Скриншот [Screenshot][1] ,

Любая помощь очень высоко ценится.

+0

Почему вы не установить изображение в качестве заголовка кнопки изображения ??? –

+0

см. Это http://stackoverflow.com/questions/30315337/how-to-draw-a-triangle-shaped-uibutton –

+0

Сэр, вы имеете в виду, что мне нужно установить titleEdgeInset? Но все равно касайтесь даже перекрытия –

ответ

1

Использование OBShapedButton библиотека его бесплатно, Drag OBShapedButton.h & OBShapedButton.m класс в проекте. & после OBShapedButton.h в файл VC.h, где вы хотите использовать кнопки,

#import "OBShapedButton.h" 

@property (weak, nonatomic) IBOutlet OBShapedButton *yourCustomButton; 

Objective-C

Drag & места UIButton на раскадровке вашего соответствия шаблона изменить каждую кнопку Пользовательского класс UIButton к OBShapedButton в class identifier & создайте экземпляр в или перетащите выход в файл VC.h.

[yourCustomButton setImage:[UIImage imageNamed:@"customImage.png"] forState:UIControlStateNormal]; 

& для стрижа вы можете использовать BridgeHeader

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

  • Нет связанных вопросов^_^