我想制作一个应用程序,用户在进入以下屏幕之前首先做出几个选择。一种选择是给出一个介于 0 和 10 之间的数字(可能是单卷选择器视图)。一旦选择了一个数字并且已经做出了其他选择,用户选择“完成”。每个数字都链接到不同的屏幕。所以 1 链接到屏幕 A,2 链接到屏幕 B 等。但我不知道我该怎么做。有人能帮帮我吗?谢谢
问问题
52 次
3 回答
1
在选择选择器视图的委托方法中,您可能希望使用某种形式的 switch 语句来加载和推送下一个视图控制器。您甚至可能决定从 plist 加载这些字符串值,以便该类更具可重用性。
NSInteger selectedNumber; //number from picker
NSString *nextViewController = nil;
switch (selectedNumber) {
case 1:
nextViewController = @"AViewController";
break;
case 2:
nextViewController = @"BViewController";
break;
case 3:
nextViewController = @"CViewController";
break;
//....
case n:
nextViewController = @"XViewController";
break;
default:
nextViewController = @"DefaultViewController";
break;
}
id viewController = [[NSClassFromString(nextViewController) alloc] init];
[self.navigationController pushViewController:viewController animated:YES];
于 2013-05-23T12:11:35.283 回答
0
有一个变量 selectedNumber。当用户从选取器中选择值时,将其保存在 selectedNumber 中。然后你可以使用 switch 来推送不同的视图。或者简单的 if 条件。
if(selectedNumber == 1){
push View A
}
else if(selectedNumber == 2){
push View A
}
于 2013-05-23T12:03:47.947 回答
0
我会做的是将pickerview委托给我当前的控制器,并在其中实现方法:
pickerView:didSelectRow:inComponent:
因此,在选择了已知行后,我将使用 Durgaprasad 所说的 if 条件将用户重定向到想要的视图。
于 2013-05-23T12:07:41.177 回答