通用应用程序设计 1 个表格视图,可在单击单元格时打开不同的视图,具体取决于 iPad 或 iPhone

发布于 2024-09-10 03:58:42 字数 394 浏览 5 评论 0原文

我正在制作一个通用应用程序,但我遇到了一个令我困惑的情况。在 iPad 上,我使用分割视图,我想制作一个在 iPad 和 iPhone 上共享的 UITableViewController 。我这样做了,但现在当用户单击表格单元格时我需要响应。在 iPhone 上,我将初始化一个新的视图控制器并将其推送到 UINavigationController 堆栈中,但在 iPad 上,我将初始化一个不同的 UIViewController 并将其显示在详细视图窗格中。我知道如何自行执行每个操作,但如何编写 UITableViewController 以便它知道要执行哪个操作,具体取决于它是 iPhone 还是 iPad?

有更好的方法来处理这个问题吗?

I'm making a universal app and I've run across a situation I'm stumped on. On the iPad I'm using a split view, and I would like to make a UITableViewController that is shared on both the iPad and iPhone. I did that, but now when the user clicks a table cell I need to respond. On the iPhone I will init a new view controller and push it in the UINavigationController stack, but on the iPad I will init a different UIViewController and display it in the detail view pane. I know how to do each of these actions by its self, but how do I write the UITableViewController so that it knows which action to preform depending if its the iPhone or iPad?

Is there a better way to handle this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

叫嚣ゝ 2024-09-17 03:58:42

这就是我在完全相同的情况下所做的事情。

表视图控制器有一个名为 detailViewController 的属性。如果此属性不是nil,那么我会根据触摸的单元格更新该视图。如果该属性为 nil,我一定位于 iPhone 上且位于 UINavigationViewController 内。我使用 self.navigationController 来推送我的新 iPhone 视图。

Here's what I did in that exact same situation.

The table-view controller had a property called detailViewController. If this property is not nil than I updated that view based on what cell was touched. If that property was nil I must be on the iPhone and inside a UINavigationViewController. I use self.navigationController to push my new iPhone view.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文