Ios 我必须为我从不同帧的循环中生成的单个UIButton执行切换
在我的iOS应用程序中,我必须按按钮单击更改图像。 我必须为我从不同帧的循环中生成的单个UIButton执行切换 如果我对单个按钮执行操作,它工作正常;如果我对多个按钮执行操作,则图像没有按照按钮操作正确更改 这是我的钮扣Ios 我必须为我从不同帧的循环中生成的单个UIButton执行切换,ios,loops,uibutton,toggle,Ios,Loops,Uibutton,Toggle,在我的iOS应用程序中,我必须按按钮单击更改图像。 我必须为我从不同帧的循环中生成的单个UIButton执行切换 如果我对单个按钮执行操作,它工作正常;如果我对多个按钮执行操作,则图像没有按照按钮操作正确更改 这是我的钮扣 btnFullScreen = [[UIButton alloc] init]; [btnFullScreen setBackgroundImage:[UIImage imageNamed:@"open icon.png"] forState:UIControlSta
btnFullScreen = [[UIButton alloc] init];
[btnFullScreen setBackgroundImage:[UIImage imageNamed:@"open icon.png"] forState:UIControlStateNormal];
[btnFullScreen setFrame:CGRectMake(self.view.frame.size.width-30,8,16,14)];
[btnFullScreen setBackgroundImage:[UIImage imageNamed:@"close icon.png"] forState:UIControlStateSelected];
[btnFullScreen addTarget:self action:@selector(showPopUp:) forControlEvents:UIControlEventTouchUpInside];
btnFullScreen.autoresizingMask=UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleBottomMargin;
[self.view addSubview:btnFullScreen];
这是我的按钮动作代码
-(void)showPopUp:(id)sender{
if ([sender isSelected]) {
[sender setImage:[UIImage imageNamed:@"open icon.png"] forState:UIControlStateNormal];
[sender setSelected:NO];
}else {
[sender setImage:[UIImage imageNamed:@"close icon.png"] forState:UIControlStateSelected];
[sender setSelected:YES];
}
[self.parent.parent addPopOversExcept:self.parent];
}
谢谢我以前在我的一个应用程序中这样做过。
我在每个tableview单元格中创建按钮 因此,将此代码作为
参考
1.具体方法
- (void)methodName:(UIButton *)sender
{
int i = [sender.titleLabel.text intValue];
NSNumber *numb;
if(i == 0)
{
numb = [NSNumber numberWithBool:NO];
sender.titleLabel.text = @"1";
[sender setImage:[UIImage imageNamed:@"down.png"] forState:UIControlStateNormal];
[sender setImage:[UIImage imageNamed:@"up.png"] forState:UIControlStateHighlighted];
}
else
{
numb = [NSNumber numberWithBool:YES];
sender.titleLabel.text = @"0";
[sender setImage:[UIImage imageNamed:@"up.png"] forState:UIControlStateNormal];
[sender setImage:[UIImage imageNamed:@"down.png"] forState:UIControlStateHighlighted];
}
}
2.在UITableView视图中为标题部分编程设置UIButton
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(240, 20, 30, 30)];
[button addTarget:self
action:@selector(methodName:)
forControlEvents:UIControlEventTouchDown];
button.tag = section;
if([[sectionsArray objectAtIndex:section] boolValue])
{
[button setImage:[UIImage imageNamed:@"up.png"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"down.png"] forState:UIControlStateHighlighted];
button.titleLabel.text = @"0";
}
else
{
[button setImage:[UIImage imageNamed:@"down.png"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"up.png"] forState:UIControlStateHighlighted];
button.titleLabel.text = @"1";
}
“发件人”是如何链接到您单击的按钮的?如果您已经为两种不同的状态设置了图像,为什么要调用showPopUp方法?更新了我的方法,实际上是从按钮操作调用了另一种方法,但我的图像没有改变,因为我正在设置相同的按钮。您的视图中现在有多少个按钮?