Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift-执行从UITableViewCells到不同视图控制器目标的切换_Uitableview_Swift_Segue_Uistoryboardsegue - Fatal编程技术网

Swift-执行从UITableViewCells到不同视图控制器目标的切换

Swift-执行从UITableViewCells到不同视图控制器目标的切换,uitableview,swift,segue,uistoryboardsegue,Uitableview,Swift,Segue,Uistoryboardsegue,因此,我在考虑如何为以下目的实现代码时遇到了一些问题: 基本上,我的应用程序允许用户在打开的屏幕上在UItextfield中键入不同的类别,点击enter,然后让这些类别显示在UITableView中(所有类别都在同一初始视图控制器上)。例如,用户可以输入“家庭好友”、“大学好友”、“NBA球员” 从那里,我希望用户能够深入到其中一行,然后被一个序列带到UITableView控制器,在那里他们可以向这些列表中添加名称,并最终能够对它们进行有趣的排序 但我目前的问题是,一旦用户在初始视图控制器上添

因此,我在考虑如何为以下目的实现代码时遇到了一些问题:

基本上,我的应用程序允许用户在打开的屏幕上在UItextfield中键入不同的类别,点击enter,然后让这些类别显示在UITableView中(所有类别都在同一初始视图控制器上)。例如,用户可以输入“家庭好友”、“大学好友”、“NBA球员”

从那里,我希望用户能够深入到其中一行,然后被一个序列带到UITableView控制器,在那里他们可以向这些列表中添加名称,并最终能够对它们进行有趣的排序

但我目前的问题是,一旦用户在初始视图控制器上添加了他想要的组,他/她如何根据他/她点击的行向下钻取并切换到特定的视图控制器

(我想发布我故事板的图片,但我还没有必要的10点声望!)

我尝试过这样的代码,但没有得到任何结果。我还将注意到,我将一个show segue从打开的视图控制器上的uitableviewcell拖到UITableViewController(segue名为“EachGroup”)


这不是一个新问题,很多话题都是关于这个问题的。 您应该在每个单元格上指定一个标记:
cell.tag=0

在准备过程中,请使用:

if sender!.tag.littleEndian == 0
{
   let UIViewController:ViewController = segue.destinationViewController as YourSpecificViewcontroller
}
else if sender!.tag.littleEndian == 1
{
   let UIViewController:ViewController = segue.destinationViewController as YourOtherSpecificViewcontroller
}
希望有帮助,
Sidd.

谢谢你。但是有两件事:1)我假设我把tableviewcontroller目标的名称放在“as”之后。2) 这是否意味着我必须为每个可能的目标创建一个新的tableviewcontroller?如果用户添加20个条目,这似乎效率低下。谢谢嘿,1)是的,2)是的,你应该创建一个更有效的交换机。或者,您应该使用
if(object_getClass(sender)==YourViewController.self){//code here}
if sender!.tag.littleEndian == 0
{
   let UIViewController:ViewController = segue.destinationViewController as YourSpecificViewcontroller
}
else if sender!.tag.littleEndian == 1
{
   let UIViewController:ViewController = segue.destinationViewController as YourOtherSpecificViewcontroller
}