1

飛び込む前に... ControlState はデフォルトで、Image が設定された Normal に設定されています

ユーザーがボタンをクリックすると、そのボタンのターゲットが必要なメソッドに対応するように設定されているため、ボタンの画像が変更されます。-(void)RADIOBUTTONAClicked: が呼び出されたときに、他のすべてのRADIOBUTTONSの画像を変更する必要があります

-(void)RadioButtonACLicked:{
//code to change radioButton A, the code i have works 
// Code to change all other buttons does not work. 
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{ .... // セルを構成します...

....
//-------------Creation of Custom Buttons-------------// 
//----RadioButtonA----//
....
[radioButtonA addTarget:self action:@selector(radioButtonAClicked:)forControlEvents:UIControlEventTouchUpInside];

 [radioButtonA setImage:img2 forState:UIControlStateNormal];

ボタンBの作成

radioButtonB = [UIButton buttonWithType:UIButtonTypeCustom];

[radioButtonB addTarget:self action:@selector(radioButtonBClicked:)forControlEvents:UIControlEventTouchUpInside];
[radioButtonB setImage:img2 forState:UIControlStateNormal]; 

したがって、radioButton がクリックされると、他のすべてのボタン Image を反対に設定する必要があります。

4

2 に答える 2

1

しばらく私を連れて行って、それを動かしました

(void)radioButtonClicked:(UIButton *)sender
{
...

// Sets the UIImage for the custom RadioButtons. 
//img refers to radioOn and img2 refers to radioOff.
// uses an if esle conditional block inorder to correctly change the Images if teh conditions are met.

for(int i=0;i<[self.radioButtons count];i++){
    if ([[self.radioButtons objectAtIndex:i]tag] == sender.tag) {
    [[self.radioButtons objectAtIndex:i] setImage:img2 forState:UIControlStateNormal];

}

[sender setImage:img forState:UIControlStateNormal];

}
于 2012-06-13T17:54:18.573 に答える
0

以下をせよ

//When creating the button, set their tags
radioButtonA = [UIButton buttonWithType:UIButtonTypeCustom];
//Add this line
radioButtonA.tag = 111;

radioButtonB = [UIButton buttonWithType:UIButtonTypeCustom];
//Add this line
radioButtonB.tag = 112;

-(void)RadioButtonACLicked:{
   //code to change radioButton A, the code i have works 
   //Code to change all other buttons does not work. 
   radioButtonA = [self.view viewWithTag:111];
   radioButtonB = [self.view viewWithTag:112];
   //Change the images for radioButton A and B as you wish
}
于 2012-06-07T07:30:56.537 に答える