Как программно создать OBShapedButton Оле - PullRequest
0 голосов
/ 23 февраля 2012

В проекте мне нужно создать несколько нерегулярных кнопок. На сети я нашел OBShapedButton. Это хороший проект, и вся работа выполнена из xib. Я должен создать его программно. Но он не работает.steps.

1.Добавьте OBShapedButton.h, OBShapedButton.m, UIImage + ColorAtPixel.h и UIImage + ColorAtPixel.m в ваш проект Xcode.2. в контроллере представления создайте объект OBShapedButton.

 obj_OBShapedButton=[[OBShapedButton alloc]init];
 obj_OBShapedButton = [UIButton buttonWithType:UIButtonTypeCustom];
 [obj_OBShapedButton setFrame:CGRectMake(10, 10, 160,161)];

[obj_OBShapedButton setImage:[UIImage imageNamed:@"button-normal.png"] forState:UIControlStateNormal];
[obj_OBShapedButton addTarget:self action:@selector(Buton_action) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:obj_OBShapedButton];

Он отображает кнопку неправильной формы.

Проблема здесь в том, что весь кадр кнопки нажимается, а не принимается только нажатие на изображение…Кто-нибудь пытается делать OLE в форме OBShapedButton программно ..

Плз, дайте мне знать.Спасибо

1 Ответ

2 голосов
/ 23 февраля 2012

Сначала вы создаете экземпляр OBShapedButton, а затем заменяете его экземпляром UIButton.Удалите obj_OBShapedButton = [UIButton buttonWithType:UIButtonTypeCustom], поскольку у вас уже есть объект, назначенный на obj_OBShapedButton

Код будет выглядеть следующим образом:

obj_OBShapedButton = [OBShapedButton buttonWithType:UIButtonTypeCustom];
[obj_OBShapedButton setFrame:CGRectMake(10, 10, 160,161)];

[obj_OBShapedButton setImage:[UIImage imageNamed:@"button-normal.png"] forState:UIControlStateNormal];
[obj_OBShapedButton addTarget:self action:@selector(Buton_action) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:obj_OBShapedButton];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...