将基于标签栏的 iPhone 项目迁移到 iPad

2024-03-05

像许多其他开发人员一样,我创建了使用UITabBarController作为根控制器,选项卡视图使用UINavigationController从列表深入到详细视图。和许多其他开发人员一样,我需要将这些应用程序迁移到 iPad,以便它们利用更大的屏幕(更重要的是,不强迫用户对仅 iPhone 的应用程序使用丑陋的“加倍”可视化)。

苹果公司创造了UISplitViewController对于这个确切的场景......似乎。我说似乎是因为虽然我看到它在“设置”、iPod、iTunes 等中使用,但这些应用程序都没有使用UISplitViewController里面一个UITabBarController,因为它不仅被记录为不起作用,而且如果这两个人被迫联姻,应用程序可能会崩溃。

假设有一个关于动物的 iPhone 应用程序。它有三个选项卡:“类别”(通过某种简单的方法对动物进行分类——也许我们有一个两级层次结构,其中有“鸟类”和“鱼”等类别)、“搜索”(使用标准UITableView and a UISearchDisplayController),还有“故事”,这是关于动物的故事(也许有一个关于青蛙的故事,还有一个关于电脑呆子马变成l33t独角兽的故事)。

虽然“类别”和“搜索”是两个可以合并的选项卡,但尚不清楚您是否可以或应该合并list的动物与stories关于动物。因此,虽然您可能想在 iPad 上使用 UISplitViewController(搜索集成在拆分左侧的“根”中),但如何呈现“故事”视图呢?您使用分段控制器吗?上还是下?拆分的“根”视图还是“详细”视图?或者您可能使用“主”屏幕(如 WebMD 的 iPad 应用程序),该屏幕显示两个按钮(“类别”和“故事”),然后显示用户点击的拆分视图?或者顶部或底部的工具栏?

我尝试查看其他几个应用程序,包括“设置”、“邮件”、“iPod”、“iTunes”、“通讯录”、“地图”等,但它们都没有在一个应用程序中呈现两种“不同”类型的信息。

这里的一般方法是什么?有没有最佳实践? iPad 编程社区采用了哪些通用模式?

或者我应该等待并祈祷苹果最终以某种方式允许UISplitViewController不需要它成为“根”就可以工作? (这可能永远不会发生!)


你可以使用UISplitViewController并有一个UITabBarController作为主视图控制器(左侧窗格通常是一个列表)。

这样,您仍然可以使用选项卡和向下钻取方法,直到您阅读每种动物的详细视图(使用您的类比),然后在详细视图控制器(右侧窗格)中显示详细信息页面。

这是可行的,并且不受 Apple 或 HIG 的禁止。

无论如何,这就是我的想法:)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将基于标签栏的 iPhone 项目迁移到 iPad 的相关文章

  • 如果在 addSubView 之后调用,UIButton 不会移动

    所以我想移动一个UIButton单击后 The addMoreFields单击按钮后调用该方法 addMoreFieldBtn是一个全球性的UIButton 当我点击它时什么也没有发生 奇怪的是 如果我注释掉addSubView代码然后按钮
  • iOS后台Location不发送http请求

    我的应用程序需要在后台跟踪用户位置 但无法发送 获取 请求 当应用程序到达前台时 http 请求会立即发送 我正在使用 RestKit 来处理所有网络请求 并且遵循本教程 http www mindsizzlers com 2011 07
  • @iPhone:如何在我们的应用程序中创建 twitter + OAuth 自定义登录

    我正在制作iphone应用程序 我正在使用 OAuth 集成 Twiiter 我的问题是我想要自己的登录页面 而不是像 twitter 提供的新 OAuth 集成那样由 twitter 提供 通过在新的 OAuth 中创建自定义登录页面 是
  • UINavigationController:iPad 上正在呈现视图控制器,同时关闭另一个控制器

    我有一个需要用户登录的视图 当用户尝试打开该视图但他尚未登录时 我将调用登录视图供他登录 完成后我将调用他想要的原始视图查看 在 iPhone 上 当我将视图控制器推到那里时 这工作得很好 但在我展示视图控制器的 iPad 上 这不起作用
  • 从 iOS/Android 上的网络应用程序调用本机日期选择器

    我正在尝试探索使用 HTML5 在不同平台上运行本机 Web 应用程序的可能性 目前 一个
  • 如果按下子视图的按钮如何取消 UIGestureRecognizer

    我正在努力从手势识别器中获得我想要的行为 特别是在其他手势已触发时取消某些手势 我有一个滚动视图设置为分页和每个页面中的多个子视图 我添加了一个触摸手势识别器 如果用户点击页面的右侧或左侧 则可以滚动到下一页或上一页 Add a gestu
  • 即使只有单个项目,也强制 uiscrollview 弹跳滚动

    我有一个 UIScrollView 其中包含不同数量的项目 子视图 当有多个项目时 滚动弹跳起作用 然而 有时滚动视图应该只有一项 我想向用户提供他们的滚动被识别的反馈 从而产生反弹效果 但是 UIScrollView 仅禁用一项滚动 答案
  • 标头搜索路径给 Grabkit 带来麻烦

    我正在为 iPad 开发一个 iOS 6 应用程序 我使用一个名为 Grabkit 的存储库 我必须将其作为嵌套 子项目添加到我的项目中 为了使其工作 我必须在标题搜索路径中添加以下代码 TARGET BUILD DIR include G
  • iPhone UIDatePicker 风格

    有什么方法 技巧可以更改 uiDatePicker 的大小 字体 背景颜色等吗 甚至背景颜色属性也不起作用 并且选择器的默认样式与我的应用程序的设计无关 也许你可以使用 UIPickerView 来代替 我见过人们使用图像作为背景 不过 您
  • Apple 应用程序加载器 - 如何更改正在使用的 Apple ID?

    我想切换 Apple App Loader 使用的 Apple ID 我找不到更改应用程序本身使用的帐户的方法 谷歌搜索没有带来任何有用的信息 当我启动加载程序应用程序时 它给我一个错误 您的 Apple ID 或密码输入不正确 20101
  • 扭曲的导航栏自定义后退按钮

    我有一个自定义后退按钮 该按钮没有按预期显示 它正在被拉伸 即使后退按钮文本为空 它仍然显示 后退 文本 提前致谢 我通常使用这种技术来使其发挥作用 要删除默认标题 UIBarButtonItem appearance setBackBut
  • 开发iPhone游戏需要什么? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 是否可以仅使用密码进行身份验证,即使设备在 ios、swift 中具有 touch id 功能

    我要认证only使用PassCode甚至设备有Touch ID特征 我在用着 deviceOwnerAuthentication评估政策方法 当我使用这个时 如果用户已注册触摸 ID gt 始终要求提供触摸 ID 如果用户尚未注册 touc
  • 如何从 NSOperationQueue 中删除/取消 NSInitationOperation?

    以下两个问题都是在维护 NSOperationQueue 和 NSInvocableOperation 的上下文中提出的 由于我已经使用这个概念来下载多个视频 因此在下载视频完成后 如何从 NSOperationQueue 中删除 释放添加
  • 内置点赞按钮 - Facebook SDK 3.0

    有人知道关于将 我喜欢它 按钮放入应用程序的好教程吗 我对 Facebook SDK 3 0 和所谓的内置点赞按钮特别感兴趣 到目前为止 我一直在google和stackoverflow上搜索 但没有找到任何关于SDK 3 0的信息 发布内
  • UIPageControl 未显示

    我使用以下内容来显示滚动视图和页面控制 scrollView UIScrollView alloc initWithFrame CGRectMake 0 0 320 179 pageControl UIPageControl alloc i
  • 自定义绘制的 UITableViewCell 中的可访问性

    当您进行自定义绘图时 UITableViewCells 滚动速度会显着提高 但是辅助功能会中断 应该如何向这样的单元添加辅助功能支持 老问题了 但 iOS 已经内置了对这种辅助功能的支持 看看UIAccessibilityContainer
  • PWA 可以访问联系人、GPS 或使用手机摄像头吗?

    PWA 可以访问联系人 GPS 或使用手机摄像头吗 这在任何系统 ios android 中都可能吗 是否有任何开发计划来实现这些功能 PWA 无法克服一些限制 you cannot访问电话上的联系人列表 另一方面 你can拍照并使用 GP
  • NSDateComponents 中的 sethours

    我正在尝试在 NSDateComponents 中设置小时 我编写了以下代码 NSCalendar calendar NSCalendar alloc initWithCalendarIdentifier NSGregorianCalend
  • UISlider最大值调整

    我有三个滑块 这些显示了我需要的不同元素的百分比 所有元素的最大值是 100 a b c 100 现在这些都相互依赖并有助于制作饼图 目前都可以设置为最大值 100 如何从逻辑上使这种依赖性和最大值成为可能 提前致谢 在处理滑块更改的方法中

随机推荐