与UIButton相关的问题
问题描述:
我在我的UIButton代码中使用了customview。与UIButton相关的问题
UIButton *button= [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
[button addTarget:self action:@selector(checkedimage:) forControlEvents:UIControlEventTouchUpInside];
-(IBAction)checkedimage:(id)sender
{
NSLog(@"checkedimage");
if(checkImage == NO)
{
newImage = [UIImage imageNamed:@"a.png"];
checkImage=YES;
}
else if(checkImage==YES)
{
newImage = [UIImage imageNamed:@"b.png"];
checkImage=NO;
}
}
,但是当我在UIButton的点击是不会行动checkedimage
为什么呢?
答
您发布的代码没有任何问题。
您是否已将此按钮添加到视图?使用界面生成器?
我跑了基于你送什么这个测试代码,所有工作得很好:
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *button= [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
[button addTarget:self action:@selector(checkedimage:) forControlEvents:UIControlEventTouchUpInside];
button.frame = CGRectMake(100, 100, 120, 20);
[self.view addSubview:button];
}
-(IBAction)checkedimage:(id)sender {
NSLog(@"checkedimage");
}
答
您没有设置正确,并没有真正给了我们足够的信息来帮助你。
你有没有在你的代码中的任何地方创建了IBOutlet
的类型UIButton
和button
的名字?如果你已经完成了这项工作,那么你是否将IB分配给正确的UIButton? 如果你已经这样做了,那么你真的不应该在代码中声明一个具有相同名字的新UIButton。它应该已经作为当前课程中的一个属性存在。
如果您还没有完成上述任何操作,则需要将您新创建的按钮添加到某个视图中,以使其可见。
我建议你阅读一些关于如何使用IB的基本教程。
你不会在视图中添加按钮,也没有按钮框架,所以设置所有这些东西.. – 2012-07-18 06:28:04