0

IOS 用の「ヤッツィー」のようなゲームをプログラミングしています。そのサイコロを保持したい場合は、サイコロ (ボタン) を押すことができる必要があり、別の画像に変わります。それはうまくいきます。また、誤ってダイを選択した場合に備えて、そのダイを選択解除できる必要があります。私は一生それを実現することはできません。以下は、私が試した多くのオプションのうちの2つです。

オプション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;
             }
        }

   }

オプション 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;
              }

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

最初のオプションは明らかに機能しません。2 番目のオプションでは、明らかな理由から何も選択できません。

UIButtons とその IBActions について、ここと他の場所でおそらく 30 の投稿を読みましたが、これを取得できません。誰かが助けてくれることを願っています。これはクラスの課題ですが、アプリ全体を作成する人がいない限り、あらゆるソースから助けを求めることをお勧めします。

4

2 に答える 2

0

私はそれを理解しました、ついに、私は愚かでした。以下はコードです:

 - (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;
         }
     } 

 }
于 2013-09-12T23:58:57.893 に答える
0
 - (IBAction)die1Button:(UIButton *)sender{
     if(self.die1Selected)
     {             
         [self.die1ButtonOutlet setBackgroundImage:([self.dieImage
                dieSelectedImage:self.die1]) forState:(UIControlStateNormal)];}
        self.die1Selected = NO;

     }else
     {

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

}

于 2013-09-13T02:03:10.727 に答える