Ios 标签属性在Xcode中更改
我编写此代码是为了通过不同的按钮更改不同标签的颜色Ios 标签属性在Xcode中更改,ios,objective-c,iphone,xcode,uiviewcontroller,Ios,Objective C,Iphone,Xcode,Uiviewcontroller,我编写此代码是为了通过不同的按钮更改不同标签的颜色 我是应用程序开发的新手,只是在一些非常基础的东西上被卡住了: -(IBAction)ButtonPressed:(id)sender { UIButton *btn=sender; if(btn.tag==1) { lbl1.text=@""; lbl1.backgroundColor=[UIColor redColor]; } if(btn.tag==2) {
我是应用程序开发的新手,只是在一些非常基础的东西上被卡住了:
-(IBAction)ButtonPressed:(id)sender
{
UIButton *btn=sender;
if(btn.tag==1)
{
lbl1.text=@"";
lbl1.backgroundColor=[UIColor redColor];
}
if(btn.tag==2)
{
lbl2.text=@"";
lbl2.backgroundColor=[UIColor greenColor];
}
else if(btn.tag==3)
{
lbl3.text=@"";
lbl3.backgroundColor=[UIColor magentaColor];
}
else if(btn.tag==4)
{
lbl4.text=@"";
lbl4.backgroundColor=[UIColor blueColor];
}
else if(btn.tag==5)
{
lbl5.text=@"";
lbl5.backgroundColor=[UIColor brownColor];
}
}
在编写代码后,标签1的颜色只会发生变化。
我已经通过故事板连接了所有的元素,不过像这样试试吧
-(IBAction)ButtonPressed:(id)sender
{
NSInteger i = [sender tag];
if(i==1)
{
lbl1.text=@"";
lbl1.backgroundColor=[UIColor redColor];
}
if(i==2)
{
lbl2.text=@"";
lbl2.backgroundColor=[UIColor greenColor];
}
else if(i==3)
{
lbl3.text=@"";
lbl3.backgroundColor=[UIColor magentaColor];
}
else if(i==4)
{
lbl4.text=@"";
lbl4.backgroundColor=[UIColor blueColor];
}
else if(i==5)
{
lbl5.text=@"";
lbl5.backgroundColor=[UIColor brownColor];
}
}
或者干脆
-(IBAction)ButtonPressed:(id)sender
{
if([sender tag]==1)
{
lbl1.text=@"";
lbl1.backgroundColor=[UIColor redColor];
}
if([sender tag]==2)
{
lbl2.text=@"";
lbl2.backgroundColor=[UIColor greenColor];
}
else if([sender tag]==3)
{
lbl3.text=@"";
lbl3.backgroundColor=[UIColor magentaColor];
}
else if([sender tag]==4)
{
lbl4.text=@"";
lbl4.backgroundColor=[UIColor blueColor];
}
else if([sender tag]==5)
{
lbl5.text=@"";
lbl5.backgroundColor=[UIColor brownColor];
}
}
同时检查按钮的标签。仅替换此行UIButton*btn=发送方
带UIButton*btn=(UIButton*)发送器 您确定所有按钮都指向触摸事件的相同方法吗?标记按方法预期设置?使用断点检查是否所有按钮都调用buttonPressed事件,使用console确保if()按预期工作,并且按钮在此函数中具有正确的标记或至少NSLog标记,以查看是否按预期工作。这与开关的情况类似case@GrzegorzKrukowski其实你是对的,你点击了正确的东西所有的按钮都没有实际调用ButtonPressed事件我交叉检查过,但由于某些原因,使用sender tag方法也很有用,谢谢你的帮助:)没问题,很高兴我帮助了你。学习如何调试是更好地学习曲线的第一步:)欢迎,只要有答案可以帮助您解决问题,请接受:)