Пытается установить значение int, используя сегментированный контроллер. Я видел несколько ссылок на изменение меток, но мне нужно установить значение int.Сегментированные контроллеры
#import "SecondViewController.h"
@interface SecondViewController()
@end
@implementation SecondViewController
@synthesize caseCost;
@synthesize dilution;
@synthesize returnMsg;
@synthesize opcValue;
//synthesize opc; < -- Tried
//int opc; <--- tried
- (IBAction)opcView:(id)sender {
if (opcValue.selectedSegmentIndex == 0) {
int opc = 320;
}
if (opcValue.selectedSegmentIndex == 1) {
int opc = 128;
}
if (opcValue.selectedSegmentIndex == 2) {
int opc = 135;
}
if (opcValue.selectedSegmentIndex == 3) {
int opc = 88;
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//int opc; <--- tried
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)finishBtn:(id)sender {
//int opc = 320;
float case_cost = ([caseCost.text floatValue]);
float dilutionValue = ([dilution.text floatValue]);
float gpc = (opc/dilutionValue);
float gCost = (case_cost/gpc);
float bCost = (gCost/4);
float bpc = (gpc * 4);
NSNumberFormatter *formatterCur = [[NSNumberFormatter alloc] init];
NSNumberFormatter *formatterInt = [[NSNumberFormatter alloc] init];
[formatterCur setNumberStyle:NSNumberFormatterCurrencyStyle];
[formatterInt setNumberStyle:NSNumberFormatterDecimalStyle];
NSString *bottlesCost = [formatterCur stringFromNumber:[NSNumber numberWithFloat:bCost]];
NSString *gallons = [formatterInt stringFromNumber:[NSNumber numberWithInt:gpc]];
NSString *gallonsCost = [formatterCur stringFromNumber:[NSNumber numberWithFloat:gCost]];
NSString *bottles = [formatterInt stringFromNumber:[NSNumber numberWithInt:bpc]];
returnMsg.text = [NSString stringWithFormat:@"%@ gallons per case at %@ per gallon and %@ - 32 oz bottles at %@ per bottle.", gallons, gallonsCost, bottles, bottlesCost];
}
- (IBAction)opcView:(id)sender {
}
@end
в строке "float gpc = (opc/dilutionValue);" отображается как неизвестное значение opc, хотя я думаю, что это должно быть от сегментированного контроллера. Я использую сегментированный контроллер вместо кнопок Radio, которые я использовал в Java. Я использовал «// int opc = 320», чтобы убедиться, что остальная часть кода работает.
Пробовал добавлять «int opc;» под реалиями и под synthasize, все еще не видящий правдивого. Вы также упомянули, что объявили его как собственность. Это сделано в файле .h правильно? Если так, я попробовал, но это тоже не понравилось. Заранее спасибо. @matthew – user2152750
Я пробовал каждую комбинацию, о которой я могу думать, или прочитал, чтобы получить метод ответа (IBAction), чтобы передать значение «opc» методу - (IBAction) finishBtn. Пожалуйста помоги. Я не могу поверить, что трудно позволить методам использовать переменную. Я думаю, что Java любит делиться, а iOS - нет. – user2152750
Я добавил @property (nonatomic) int opc; в файл .h. – user2152750