Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 按下按钮时更改按钮背景的操作,然后从一个按钮再次按下时更改回来_Objective C_Ios6_Uibutton_Ibaction - Fatal编程技术网

Objective c 按下按钮时更改按钮背景的操作,然后从一个按钮再次按下时更改回来

Objective c 按下按钮时更改按钮背景的操作,然后从一个按钮再次按下时更改回来,objective-c,ios6,uibutton,ibaction,Objective C,Ios6,Uibutton,Ibaction,我正在为IOS编写一个类似“yahtzee”的游戏。我需要能够按下模具(按钮),如果我希望保持该模具,它将改变为一个备用图像。那很好。我还需要能够取消选择该模具,以防我选择错误。我这辈子都不能让这件事发生。以下是我尝试过的许多选项中的两个: 选项1: - (IBAction)die1Button:(UIButton *)sender { if (sender) { if (self.die1 >= 1)

我正在为IOS编写一个类似“yahtzee”的游戏。我需要能够按下模具(按钮),如果我希望保持该模具,它将改变为一个备用图像。那很好。我还需要能够取消选择该模具,以防我选择错误。我这辈子都不能让这件事发生。以下是我尝试过的许多选项中的两个:

选项1:

 - (IBAction)die1Button:(UIButton *)sender
   {
        if (sender)
        {
              if (self.die1 >= 1)
              {
                   [self.die1ButtonOutlet setBackgroundImage:([self.dieImage            
                                      dieSelectedImage:self.die1]) forState:
                                                    (UIControlStateNormal)];
                   self.die1Selected = YES;
              }
              else
              {
                   self.die1Selected = NO;
              }
        }
   }

 - (IBAction)die1ButtonSelected:(UIButton *)sender
   {
        if(sender)
        {
             if (self.die1Selected == YES)
             {
                  [self.die1ButtonOutlet setBackgroundImage:([self.dieImage 
                                             dieImage:self.die1]) forState:
                                                 (UIControlStateSelected)];
                  self.die1Selected = NO;
             }
        }

   }
 - (IBAction)die1Button:(UIButton *)sender
   {
        if (sender)
        {
              if (self.die1 >= 1)
              {
                   [self.die1ButtonOutlet setBackgroundImage:([self.dieImage            
                                      dieSelectedImage:self.die1]) forState:
                                                    (UIControlStateNormal)];
                   self.die1Selected = YES;
              }
              else
              {
                   self.die1Selected = NO;
              }

              if (self.die1Selected == YES)
             {
                  [self.die1ButtonOutlet setBackgroundImage:([self.dieImage 
                                             dieImage:self.die1]) forState:
                                                 (UIControlStateSelected)];
                  self.die1Selected = NO;
             }
        }
   }
选项2:

 - (IBAction)die1Button:(UIButton *)sender
   {
        if (sender)
        {
              if (self.die1 >= 1)
              {
                   [self.die1ButtonOutlet setBackgroundImage:([self.dieImage            
                                      dieSelectedImage:self.die1]) forState:
                                                    (UIControlStateNormal)];
                   self.die1Selected = YES;
              }
              else
              {
                   self.die1Selected = NO;
              }
        }
   }

 - (IBAction)die1ButtonSelected:(UIButton *)sender
   {
        if(sender)
        {
             if (self.die1Selected == YES)
             {
                  [self.die1ButtonOutlet setBackgroundImage:([self.dieImage 
                                             dieImage:self.die1]) forState:
                                                 (UIControlStateSelected)];
                  self.die1Selected = NO;
             }
        }

   }
 - (IBAction)die1Button:(UIButton *)sender
   {
        if (sender)
        {
              if (self.die1 >= 1)
              {
                   [self.die1ButtonOutlet setBackgroundImage:([self.dieImage            
                                      dieSelectedImage:self.die1]) forState:
                                                    (UIControlStateNormal)];
                   self.die1Selected = YES;
              }
              else
              {
                   self.die1Selected = NO;
              }

              if (self.die1Selected == YES)
             {
                  [self.die1ButtonOutlet setBackgroundImage:([self.dieImage 
                                             dieImage:self.die1]) forState:
                                                 (UIControlStateSelected)];
                  self.die1Selected = NO;
             }
        }
   }
第一个选项显然不起作用,也不起作用。由于明显的原因,第二个选项也不允许我选择任何内容


我已经在这里和其他地方读了大概30篇关于UIButtons及其iBaction的帖子,但是我没有读到,希望有人能帮忙。这是一个课堂作业,但我们被鼓励寻求任何来源的帮助,只要我们没有人为我们编写整个应用程序

我终于明白了,我是愚蠢的。代码如下:

 - (IBAction)die1Button:(UIButton *)sender
 {
     if (sender)
     {
         if (self.die1Selected == NO)
         {
             self.die1Selected = YES;
             [self.die1ButtonOutlet setBackgroundImage:([self.dieImage
                    dieSelectedImage:self.die1]) forState:(UIControlStateNormal)];
         }else
         {

             [self.die1ButtonOutlet setBackgroundImage:([self.dieImage  
                    dieImage:self.die1]) forState:(UIControlStateNormal)];
             self.die1Selected = NO;
         }
     } 

 }
}