クラスでカスタムs が定義されているUITableView
があります。のメソッドを呼び出すには、クラスにある が必要です。メソッドがいくつかの変数を使用しているため、新しいインスタンスを作成できません。これらの変数は、新しいインスタンスを作成した場合にすべてデフォルト状態になります。私は何をしますか??MainViewController
UITableCell
CustomCell
UIButton
CustomCell
MainViewController
MainViewController
これは私のコードです:
MainViewController.m
(これは私が呼び出したいメソッドです):
-(void)updateLabels{
double totalValue=0, personValue=0;
[self returnTickArray];
for(NSInteger i = 0; i < n; i++) {
totalValue += ([[[self returnPricesArray] objectAtIndex:i] doubleValue] * [[[self returnQtyArray] objectAtIndex:i]doubleValue]);
if([[[self returnPeopleArray] objectAtIndex:i]doubleValue]>0) personValue += ([[[self returnPricesArray] objectAtIndex:i] doubleValue] * [[[self returnQtyArray] objectAtIndex:i]doubleValue]/ [[[self returnPeopleArray] objectAtIndex:i]doubleValue] * [[[self returnTickArray] objectAtIndex:i]doubleValue]);
}
_totalValue.text = [NSString stringWithFormat:@"$ %.02lf", totalValue];
_tip.text= [NSString stringWithFormat:@"$ %.02lf", totalValue*(([_tipPercentage.text doubleValue]/100))];
_addedValue.text= [NSString stringWithFormat:@"$ %.02lf",([[_tip.text substringFromIndex:2] doubleValue]+totalValue) ];
_perPerson.text=[NSString stringWithFormat:@"$ %.02lf", personValue];
}
これはCustomCell.m
、ボタンを押したときに呼び出されるメソッドです。
- (IBAction)tick:(UIButton *)sender {
if ([sender isSelected]) {
[sender setImage:[UIImage imageNamed:@"off"] forState:UIControlStateNormal];
[sender setSelected:NO];
_isTicked = [NSNumber numberWithInt:0];
}
else {
[sender setImage:[UIImage imageNamed:@"on"] forState:UIControlStateSelected];
[sender setSelected:YES];
_isTicked = [NSNumber numberWithInt:1];
}
}