4

我这样做是为了改变UIButton图像,这里所有的“开关”都是IBOutletsUIButton

-(IBAction)userselect:(id)sender
{
    UIButton *btnTagcatcher =(UIButton * )sender;
 if(btnTagcatcher.tag == 1)
    {
        if(btnimgflag1 == 0)
            {
                NSString* path  = [[NSBundle mainBundle] pathForResource:@"check-box-withtick-1n1" 
                                                                  ofType:@"png"];
                UIImage *image  = [[UIImage alloc] initWithContentsOfFile:path];
                [switch1 setImage:image forState:UIControlStateNormal];
                NSString* path1  = [[NSBundle mainBundle] pathForResource:@"check-box-withouttickn1" 
                                                                   ofType:@"png"];
                UIImage *image1  = [[UIImage alloc] initWithContentsOfFile:path1];
                [switch2 setImage:image1 forState:UIControlStateNormal];
                [switch3 setImage:image1 forState:UIControlStateNormal];
                [switch4 setImage:image1 forState:UIControlStateNormal];
                btnimgflag2 = 0;
                btnimgflag3 = 0;
                btnimgflag4 = 0;


                btnimgflag1 = 1;
            }
            else if(btnimgflag1 == 1)
            {
        NSString* path  = [[NSBundle mainBundle] pathForResource:@"check-box-withouttickn1" 
                                                                  ofType:@"png"];
                UIImage *image  = [[UIImage alloc] initWithContentsOfFile:path];

                //[switch1 setImage: image];
                [switch1 setImage:image forState:UIControlStateNormal];
                btnimgflag1 = 0;
            }

但有时(通常是第一次按下时)按钮图像在点击时不会改变。

我不知道,这里发生了什么,请。提前指导我,谢谢。

问候萨德。

4

2 回答 2

1

请调试您的代码并检查您是否获得了正确的按钮标签。我已经完全实现了您所描述的内容并复制粘贴您的代码,它不起作用,然后我只是if(btnTagcatcher.tag == 1)if(btnTagcatcher.tag == 0). 现在它正在工作,请尝试验证这一点。

如果事件这你有问题,那么请给我你的电子邮件ID,我会给你完整的代码。

于 2012-08-06T07:23:25.567 回答
1

你能把这个条件改成else if(btnimgflag1 == 1)简单的else语句吗?因为在if您将 btnimgflag1 分配为 1 的部分中btnimgflag1 = 1;。只是我的猜测,我遇到了完全相同的问题!如果那没有帮助!IBOutlet connections应该是问题!!

于 2012-08-06T07:36:09.413 回答