我的故事板中有很多控制器,我正在打电话.
[self performSegueWithIdentifier:@"someIdentifier" sender:self];
如果我想在xcode storyboard中搜索控制器与someIdentifier关联,那我该怎么办?
有什么办法,或者我必须点击并检查所有控制器?
解决方法
遗憾的是,代码无法找到视图控制器/故事板场景的故事板标识符.
您可以考虑在项目中添加一个额外的目标/构建阶段,该阶段运行脚本以从故事板XML中提取segue标识符并转换为可导入的常量文件.然后你得到字符串的运行时检查.
像这样的东西(推送segues):
grep -r -h "kind=\"push\"" *.storyboard | sed -e 's/.*identifier="\(.*\)".*id=\".*/extern NSString * const XXXSegueName_\1;/' | sort | uniq > "XXXSegueConstants.h" grep -r -h "kind=\"push\"" *.storyboard | sed -e 's/.*identifier="\(.*\)".*id=\".*/NSString * const XXXSegueName_\1 = @\"\1\";/' | sort | uniq > "XXXSegueConstants.m"
应该给你:
extern NSString * const HDCSegueName_PushMyViewController;
和
NSString * const HDCSegueName_PushMyViewController = @"PushMyViewController";
我会留下其他的segue类型作为读者的练习!