目前,我正在开发一个 iPad 应用程序,该应用程序在第一个场景上显示幻灯片 - 使用分页 UIScrollView 实现。当我单击幻灯片中的一页时,我想推送一个新的 VC(到一个新场景,它应该显示多个缩略图……如果您愿意,可以是一种细节层)。
我怎样才能通过segue做到这一点?目前,我只是拉出一个新的 VC,并将 SlideshowVC 与场景中的下一个 VC 连接 - 但没有任何反应。我研究了几个教程,但大多数都使用一个连接到下一个 VC 的按钮。它是否能够简单地将 SlideshowVC 与下一个 VC 连接,或者我真的需要在整个滚动视图上绑一个按钮并将按钮与下一个 VC 连接吗?
目前我的场景如下图所示。第一个是 NavVC,第二个是 SlidehsowVC,第三个是 DetailVC。
如果我正在使用故事板,那么创建 segue 并使用 performSegueWithIdentifier 还是仅使用 presentViewController 将用户从一个视图控制器移动到下一个视图控制器是更好的做法。
在这个例子中,假设我们使用 Swift 5 并且我有 2 个视图控制器:MainViewController 上的联系人 TableView 和 DetailViewController 上该联系人的详细信息。
在我的代码中,我使用的是 presentViewController,但由于我是 iOS 开发的新手,我不确定这是否是最好的方法。
新项目
旧项目
当我创建一个新的或继续使用旧的时,我根本无法使用故事板。请问有什么帮助吗?
我尝试使用故事板与表视图segue到控制器视图,应该显示我的图片.问题是,当我按下任何"单元格"时,应用程序会崩溃.
这是问题代码:
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([[segue identifier] isEqualToString:@"ShowPhoto"])
{
DetailsViewController *dvc = [segue
destinationViewController];
NSIndexPath *path = [[self tableView] indexPathsForSelectedRows];
Photo *pic = [photosArray objectAtIndex:[path row]];
[dvc setCureentPic: pic];
}
}
Run Code Online (Sandbox Code Playgroud)
问题是NSIndexPath的行...我认为原因是我尝试将数组插入NSIndex.xcode警告:使用类型为"NSArray"的表达式初始化"NSIndexPath*__ strong"的指针类型不兼容.
crush消息:无法识别的选择器发送到实例[__NSArrayI行].我该如何解决这个问题?
我一直在以编程方式编写一个应用程序,突然决定在启动屏幕上做一些工作,自从创建项目文件以来我就没有碰过它,并且我尝试添加 UILabel 文本以及 UIImageView (两者分别与约束),但是我似乎无法让 LaunchScreen 在模拟器上显示我的设备。
有人有在非故事板项目中使用启动屏幕的经验吗?关于如何让它发挥作用有什么建议吗?
我的启动屏幕已勾选所有适当的框,例如Use as Launch Screen
和Is Initial Controller
当您使用故事板引用将segue执行回故事板时,它会加载该故事板的初始视图控制器.
我需要从另一个故事板中找到一个不是我初始视图控制器的视图控制器.
你是如何做到这一点的?
我想UISwitch
在 a 中设置a UINavigationBar
。但是,当我尝试将手指放在开关上并拖动它以打开和关闭“开关”时,视图没有响应。
这就是我所拥有的。 https://github.com/rchampa/views-within-navigationItem
当我使用 Xcode 14 启动新项目时,我无法将界面从 SwiftUI 更改为 Storyboard。
我在哪里可以创建一个使用 Storyboard 而不是 SwiftUI 的新项目?