所以我有一个tableview,当有人点击一行时,我想println(rowtext)然后segue到另一个viewcontroller。在新的视图控制器中,我希望使用println中的rowtext作为标题和查询rowtext。这可能。
Woops,修复帖子" rowtext"没有显示。
答案 0 :(得分:1)
您无法从print语句中获取数据。尝试创建一个全局变量来传递数据......
请按照以下步骤操作......
1:创建一个名为Manager.swift的独立文件,并将此代码放入其中......
// manager.swift
import Foundation
struct Manager {
static var rowNumber = Int()
}
2:按Shift + Command + K清洁项目。
3:在第一个视图控制器中,将rowNumber设置为您要传递的数据...
Manager.rowNumber = self.dataToPass
4:在第二个视图控制器中检索数据并将内容设置为rowNumber ...
self.dataToReceive = Manager.rowNumber
5:你的成品!!
答案 1 :(得分:0)
您可以通过以下方式访问目标视图控制器:
ViewController *destViewController = [segue destinationViewController];
在目标控制器上设置一个属性(比如rowText)并执行:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([[segue identifier] isEqualToString:@"yourSegueIdentifier"])
{
ViewController *destViewController = [segue destinationViewController];
destViewController.rowText = <rowtext that you want to pass>;
}
}
如果您嵌入在导航控制器中,请使用:
UINavigationController *navController = (UINavigationController*)[segue destinationViewController];
ViewController *destViewController = (YourViewController* )[navController topViewController];
destViewController.rowText = <rowtext that you want to pass>;