问题标签 [uinavigationcontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
5965 浏览

objective-c - UIImagePicker 完成或取消后调用 popToRootViewControllerAnimated?(iPhone,目标 C)

我正在尝试在我的 iPhone 应用程序中实现实时摄像头功能,但遇到了麻烦。基本上,它的结构是这样的:我提供了一个 UINavigationController,用户可以在其中导航到带有表格视图和(在选择一个时)详细视图的图像。

然后他们可以单击一个按钮并用相机拍摄一张新照片。理想情况下,应该发生的是,在拍照或取消后,他们会返回到再次列出图像的导航根目录。为此,我在我的主要细节视图控制器中实现 UIImagePickerController 委托。

除了最后一点之外,所有这些都实现得很好 - 我可以访问照片等,但是当尝试返回第一个列表时 - 使用popToRootViewControllerAnimated - 我得到一个EXC_BAD_ACCESS错误。这是相关代码的简化版本(didFinishPickingMediaWithInfo...imagePickerControllerDidCancel工作方式相同):

注释掉最后一行使其工作,但随后它只是返回到带有原始照片的详细视图,而不是列表。

任何人?

更新:我之前忽略的一个细节......事实上,流行音乐似乎在一定程度上起作用。相机选择器被关闭并返回列表。但是,那是应用程序死机的时候(选定的表格单元格仍然是蓝色的,用户之前从那里点击过)。我也尝试使用popViewControllerAnimated完全相同的结果。

0 投票
2 回答
1844 浏览

iphone - 调整作为 iPhone 上 UINavigationController 一部分的 viewControllers 视图的大小

我正在使用 UINavigationController 来处理我的应用程序中 viewControllers 的推送和弹出。有一个部分,我有一个标签栏(不使用 UITabbarController),它由同一个 UINavigationController 管理,我只需将 UITabBar 添加到导航控制器视图(通过使用 addSubview)。

问题:我有一些带有表视图的 UIViewControllers 被推入导航堆栈,因为我的 Tab Bar 是视图的一部分而不是导航堆栈,所以 TableViews 在底部被切断,因为导航控制器不知道标签栏因为它在它的视图中,而不是导航堆栈。如果没有导航控制器,我只会调整 ViewControllers 视图的大小,它会正常工作,但是当我尝试这样做时,NavigationCOntroller 似乎只是忽略了我的框架并设置了它自己的框架,因此表格视图被切断了。我找到了一种解决方案,它是添加一些额外的单元格并将它们隐藏起来,它工作得有点好,但它有点像黑客,有人对如何以不同的非黑客方式解决这个问题有任何建议吗?

谢谢

0 投票
2 回答
842 浏览

objective-c - 在标准 Flipside 视图中创建导航视图?

有谁知道如何在标准翻转视图中创建导航视图以读取和更新设置?如果是这样,您能否发布一些有关执行此操作的代码。

0 投票
2 回答
18298 浏览

cocoa-touch - 设置 UINavigationController 的工具栏项

setToolbarItems:animated:在 iPhone OS 3.0 中,您可以使用该方法设置 UINavigationController 的工具栏项。但是,这需要您传入一个 UIToolbarItems 数组。虽然我可以通过编程方式创建这些工具栏项,但如果可能的话,我宁愿在 Interface Builder 中创建它们。

考虑到这一点,我在“MyGreatViewController.xib”中创建了一个 UIToolbar,并用所需的工具栏项填充了它。然后,在“MyGreatViewController.m”中,我从工具栏中获取项目并将它们传递给setToolbarItems:animated:

...哪里toolbar是指 UIToolbar 的 IBOutlet。

这是一个好方法吗?有没有更好的方法来实现这一点?我应该只以编程方式创建项目吗?

0 投票
1 回答
941 浏览

iphone - 从一个简单的 UIView 打开 UINavigationController UITable

这个问题整天让我发疯,必须有一个简单的答案。

我需要创建一个登录页面,然后提供对 UITableView 的访问,然后由 UINavigationController 控制。问题是我如何获取并初始加载登录页面(UIViewController - 由“基于视图的应用程序模板创建”)来加载第二个页面?我对用户交互的反应很好,这只是启动让我难过的第二页。让一个页面导航到另一个页面一定很容易,是吗?

我可以阅读周围的任何例子吗?任何帮助和建议将不胜感激。

Zen-C

0 投票
2 回答
16905 浏览

iphone - 使用核心数据进行存储 - 在基于导航和基于窗口的应用程序中 - iPhone

在 XCode 中创建项目的选项太多,

但是当我们选择基于导航的应用程序/基于窗口的应用程序时

我们可以看到额外的选项 - Use Core Data For Storage。

我需要简短的细节。

它有什么新东西?

0 投票
1 回答
10047 浏览

iphone - UIToolbar 项目未显示

我有一个 UINavigationController 被推送一个 DetailsViewController。在这个 DetailsViewController 中,我想使用每个 UINavigationController 附带的工具栏(至少,从 iPhone OS3.0 开始)。

因此,在 DetailsViewController 的 viewDidLoad 中,我创建了一个 UIBarButtonItem,将其添加到数组中并将其交给导航控制器:

但是,由于某种原因,当 UIToolbar 在屏幕上显示动画时,该项目并未添加到工具栏中。

UIToolbar 是否需要执行某种特定的命令才能使其正常工作?

PS:应用程序处于(强制)横向模式,并且 navigationController.view 上有一个旋转变换。这和它有什么关系吗?

0 投票
3 回答
1735 浏览

iphone - UINavigationController 在 UINavigationController 内的 UITabBarController 内

我的问题是我想要一个标签栏视图,它的子视图控制器首先显示。在子视图控制器中,根据单击的控件,我要么想要 A)在标签栏视图中向下钻取(滑开子视图控制器)或 B)在标签栏视图上向下钻取(滑开标签栏视图控制器)。

我尝试通过在标签栏控制器的子视图控制器中包装一个导航控制器(这样我可以使用方法 A 向下钻取)然后在标签栏控制器本身周围包装另一个导航控制器来解决这个问题(这样我就可以向下钻取使用方法 B),因此标题。就这样:Window -> UINavigationController -> UITabBarController -> UINavigationController -> 子视图控制器

问题是我最终得到了两个导航栏:

两个导航栏!!http://img527.imageshack.us/img527/240/problemc.png

有没有其他人遇到过这个问题,如果有,您是如何解决的?谢谢!

0 投票
4 回答
10931 浏览

iphone - iphone标签栏控制器和核心数据

好吧,一个新手类型的问题。

我想将 Core Data 与 Tab 和 Navigation 控制器一起使用。

在 XCode 中,如果我创建一个基于导航的应用程序,我可以选择 Core Data。而如果我创建一个标签栏应用程序,我没有选择。

我知道标签栏显示视图控制器,所以它有点道理。但是,鉴于默认情况下它将基本核心数据代码粘贴在应用程序委托中,我不明白为什么不提供此功能。

目前我正在创建这两个项目并在它们之间进行剪切和粘贴。

XCode 中的这个遗漏对你来说是不是很奇怪?这是某种疏忽吗?

谢谢,马特

0 投票
3 回答
983 浏览

iphone - 苹果的核心位置提示——为什么会跳回Root View控制器?

我有一个使用 UINavigationController 的 iPhone 应用程序。在堆栈的第四个控制器上,我正在做一些核心位置的事情——所以,用户使用我的应用程序的前几次,他们被问到是否可以使用位置服务。这是一个(我认为)我无法控制的过程。

在用户确认后,他们实际上被撞回到导航控制器堆栈中的我的根视图控制器。这是一个错误,我做错了什么,还是这是预期的行为?我希望用户能够继续使用第四个控制器,而不必重新导航回它。

如果这是预期的行为,我想我可以在用户启动应用程序时立即启动位置服务,而不是在我的第四个视图控制器中。