2012-11-02 34 views
0

我有兩個按鈕Btn1和Btn2與他們的圖像Btn1image1.png,Btn2image1.png。 通過單擊每個按鈕,它必須分別顯示Btn1image2.png和Btn2image2.png。如何通過點擊更改按鈕上的圖像並隱藏目標C中的下一個圖像?

還有,如果被點擊BTN1 BTN2形象應該是相同的(Btn2image1.png)和即

如何實現這一目標?

我在這裏將我的工作,但它不是在BTN2的情況下工作單擊

-(IBAction)Bt1Click:(id)sender 
    { 

     if (Bt1.selected=YES) 
     { 
      UIImage *buttonImage = [UIImage imageNamed:@"Btn1image2.png"]; 
      [foodButt setBackgroundImage:buttonImage forState:UIControlStateSelected]; 

     } 
     else 
     { 
      UIImage *buttonImage = [UIImage imageNamed:@"Btn2image1.png"]; 
      [foodButt setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
     } 


     [self.searchBaar resignFirstResponder]; 
    } 

    -(IBAction)Btn2Click:(id)sender 
    { 
     if (Btn2.selected=YES) 
     { 
      UIImage *buttonImage = [UIImage imageNamed:@"Btn2image2.png"]; 
      [PeopButt setBackgroundImage:buttonImage forState:UIControlStateSelected]; 
     } 
     else 
     { 
      UIImage *buttonImage = [UIImage imageNamed:@"Btn1image1.png"]; 
      [PeopButt setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
     } 

     [self.searchBaar resignFirstResponder]; 

    } 
+3

我很驚訝,即使編譯......你有一個任務在你的'如果'條件。 – yeesterbunny

+0

這是一個屬性的點語法的危險之一的例子:( – yfrancis

+0

它會編譯(有警告),它只是不會正常工作。作爲警告將呃,警告。 – nielsbot

回答

0

什麼這裏試試這個代碼,你也沒有改變圖像分別與您的要求..我只是想想你的要求,然後張貼這個代碼..

-(IBAction)Bt1Click:(id)sender 
{ 

    if (Bt1.selected) 
    { 
     UIImage *buttonImage = [UIImage imageNamed:@"Btn1image2.png"]; 
     [foodButt setBackgroundImage:buttonImage forState:UIControlStateSelected]; 
     Bt1.selected = NO; 

    }else{ 

     UIImage *buttonImage = [UIImage imageNamed:@"Btn1image1.png"]; 
     [foodButt setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
     Bt1.selected = YES; 
    } 


    [self.searchBaar resignFirstResponder]; 
} 
-(IBAction)Btn2Click:(id)sender 
{ 

    if (Btn2.selected) 
    { 
     UIImage *buttonImage = [UIImage imageNamed:@"Btn2image2.png"]; 
     [PeopButt setBackgroundImage:buttonImage forState:UIControlStateSelected]; 
     Btn2.selected = NO; 

    }else{ 

     UIImage *buttonImage = [UIImage imageNamed:@"Btn2image1.png"]; 
     [PeopButt setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
     Btn2.selected = YES; 
    } 


    [self.searchBaar resignFirstResponder]; 
} 
0
Try this for the first one and make the similar changes to second one: 

-(IBAction)Bt1Click:(id)sender 
    { 

    if (Bt1.selected) 
    { 
     UIImage *buttonImage = [UIImage imageNamed:@"Btn1image2.png"]; 
     [foodButt setBackgroundImage:buttonImage forState:UIControlStateSelected]; 
     Bt1.selected = NO; 

    }else{ 

     UIImage *buttonImage = [UIImage imageNamed:@"Btn2image1.png"]; 
     [foodButt setBackgroundImage:buttonImage forState:UIControlStateNormal]; 
     Bt1.selected = YES; 
    } 


    [self.searchBaar resignFirstResponder]; 
0

你做以下幾點:

if (Bt1.selected = YES) 

這是不這樣做你認爲它在做。上述代碼設置BT1的選擇屬性設置爲是,要做到以下幾點:

if (Bt1.selected == YES) 

=受讓人,而==比較,這是你想在這裏

相關問題