Has*_*eed 1 iphone objective-c uibutton ios
我创建了一个自定义按钮类,其中包含一些继承自UIButton的额外属性.使用普通按钮将其添加到以下视图中:
EFButton *btn = [EFButton buttonWithType:UIButtonTypeRoundedRect];
btn.frame = CGRectMake(500, 100, 100, 44);
btn.backgroundColor = [UIColor lightGrayColor];
btn.userInteractionEnabled = NO;
[self.view addSubview:btn];
UIButton *nBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
nBtn.frame = CGRectMake(500, 100, 100, 44);
nBtn.backgroundColor = [UIColor lightGrayColor];
nBtn.userInteractionEnabled = NO;
[self.view addSubview:nBtn];
Run Code Online (Sandbox Code Playgroud)
循环遍历视图中的对象,如:
for (id view in self.view.subviews)
{
if ([view isKindOfClass:[EFButton class]])
{
//** dsnt come here **
NSLog(@"EFButton Class");
EFButton *btn = view;
}
if ([view isKindOfClass:[UIButton class]])
{
//** come here **
NSLog(@"UIButton Class");
UIButton *btn = view;
}
}
Run Code Online (Sandbox Code Playgroud)
UIButton是有效的,但它不是在isKindOfClass:[EFButton类]的条件下.请帮助我解决我做错了什么或者需要做些什么.
它是因为buttonWithType是一个类方法UIButton,它返回UIButton类型,虽然你EFButton继承UIButton,但它不能返回 EFButton 类型
引用开发者文档
If you subclass UIButton, this method does not return an instance of your subclass
Run Code Online (Sandbox Code Playgroud)
PS:我不认为继承UIButton是一种好方法.
| 归档时间: |
|
| 查看次数: |
1256 次 |
| 最近记录: |