Ios 如何使用pickerView生成if语句

Ios 如何使用pickerView生成if语句,ios,xcode,if-statement,uipickerview,ibaction,Ios,Xcode,If Statement,Uipickerview,Ibaction,我有一个pickerView,根据pickerView中的选择,我需要一个按钮(计算按钮)来执行两个数学运算之一。pickerView有一个组件和两行(公行和母行)。如果用户选择男性,然后点击计算按钮,我希望程序使用一个公式。如果用户选择女性,然后单击“计算”按钮,我希望程序使用不同的公式。我厌倦了使用 -(IBaction)caclulate{ if ([pickerView isEqual:sexPickerView] ) { if ([objectAtIndex:0]) {

我有一个pickerView,根据pickerView中的选择,我需要一个按钮(计算按钮)来执行两个数学运算之一。pickerView有一个组件和两行(公行和母行)。如果用户选择男性,然后点击计算按钮,我希望程序使用一个公式。如果用户选择女性,然后单击“计算”按钮,我希望程序使用不同的公式。我厌倦了使用

-(IBaction)caclulate{

if ([pickerView isEqual:sexPickerView] ) {
    if ([objectAtIndex:0]) {
         "do formula 0"
}
if ([objectAtIndex:1){
  "do formula 1"
}
}
(do formula 0和1不是实际的代码…我有数学公式,但它们对这个问题并不重要,所以我做了简短的说明)

然而,这让我犯了两个错误。pickerView未声明,objectAtIndex未声明。我是一个编程新手,所以我想做的可能是太离谱了

有人知道我该怎么做吗

更新

-(IBAction)calculate{

    if ([sexPickerView selectedRowInComponent:0]) {
    "do formula 0"
}

//female
 if ([sexPickerView selectedRowInComponent:1]) {
    "do formula 1"
 }
}
这就是我所说的,现在当我点击计算按钮时,我得到一个错误,上面写着

[会议于2012-08-08 16:04:33-0500开始。] 2012-08-08 16:05:26.580卡路里最终[4289:207]*由于未捕获的异常“NSRangeException”而终止应用程序,原因:“*-[NSMutableArray objectAtIndex::]:索引1超出边界[0..0]”

当我取出if语句并分别尝试每个公式时,应用程序运行时不会出现问题。

您需要的只是:

[pickerView selectedRowInComponent:0];
这将返回所选的行,在您的情况下为0或1

至于未声明的
pickerView
,我不确定您试图使用的是什么
pickerView
,或者应该在哪里声明。如果您已经有了对
sexPickerView
的引用,只需忽略该检查,直接使用
sexPickerView

编辑

作为对错误的响应,问题在于您尝试检查所选内容的方式。您只有一个组件,因此只能调用

[sexPickerView selectedRowInComponent:0];
您将
0
更改为
1
,但它不起作用。该函数返回的是要检查的
0
1
。因此,您的计算函数应该如下所示:

-(IBAction)calculate{

    if ([sexPickerView selectedRowInComponent:0] == 0) {
    "do formula 0"
}

//female
 if ([sexPickerView selectedRowInComponent:0] == 1) {
    "do formula 1"
 }
}
您所需要的只是:

[pickerView selectedRowInComponent:0];
这将返回所选的行,在您的情况下为0或1

至于未声明的
pickerView
,我不确定您试图使用的是什么
pickerView
,或者应该在哪里声明。如果您已经有了对
sexPickerView
的引用,只需忽略该检查,直接使用
sexPickerView

编辑

作为对错误的响应,问题在于您尝试检查所选内容的方式。您只有一个组件,因此只能调用

[sexPickerView selectedRowInComponent:0];
您将
0
更改为
1
,但它不起作用。该函数返回的是要检查的
0
1
。因此,您的计算函数应该如下所示:

-(IBAction)calculate{

    if ([sexPickerView selectedRowInComponent:0] == 0) {
    "do formula 0"
}

//female
 if ([sexPickerView selectedRowInComponent:0] == 1) {
    "do formula 1"
 }
}

我尝试了你的代码,遇到了一些问题。。。更新了我的问题,请你再看一次好吗?我尝试了你的代码,遇到了一些问题。。。更新了我的问题,请你再看一遍好吗?