在项目中我必须创建一些非常规按钮。在网上,我找到了Ole的OBShapedButton。这是一个很好的项目,所有工作都是从xib完成的。我必须以编程方式创建它。但它不能工作我会做以下步骤。
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];
显示不规则形状按钮。
这里的问题是整个按钮框架点击,而不是只接受点击图像...。任何人都试图以编程方式做OBS形状的按钮...
Plz让我知道。 感谢
答案 0 :(得分:2)
您首先要创建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];