草庐IT

UINavigationcontroller

全部标签

ios - 在 iOS 上使用 UINavigationController 时如何在屏幕上垂直居中?

我在IB中的UIViewController中定义了一个UIView,并且我放置了一个完全居中(垂直和水平)的事件微调器。这一切看起来都很棒,除了在实践中我通过将UIViewController推到UINavigationController上来使用它-因此,它显示“向下推”我的屏幕50像素或其他任何东西,所以我的微调器不再居中。您如何解决这个问题?我希望相同的代码适用于所有iOS设备。我不介意以编程方式添加它——也许我需要这样做?但我不知道如何使用屏幕尺寸、View尺寸、导航View尺寸,然后以微调器的“本地”坐标系结束。 最佳答案

iphone - 如何将 uinavigationcontroller 推送到另一个 uinavigationcontroller

目前我有一个使用uinavigationcontroller但仅在RootView中隐藏导航栏的应用程序,我想在某些应用程序中将此应用程序用作外部库并将整个应用程序作为一个菜单项推送。但是当我尝试将此应用程序推送到导航堆栈时,它隐藏了导航栏,我无法返回到我之前的列表。如何在这种情况下显示后退按钮以及如何在其他导航Controller中推送一个uinavigationcontroller?请帮我解决这个问题。 最佳答案 navigationController适用于整个应用程序。因此,您需要做的只是将导航bvar隐藏在RootView

iphone - 捕捉 UINavigationController native 后退按钮操作

关于覆盖导航Controller的后退按钮操作有很多问题,但每个人都说没有直接的方法可以做到这一点。我通过继承UINavigationController并覆盖UINavigationBarDelegate方法实现了这一点。但问题是UINavigationController的接口(interface)没有实现UINavigationBarDelegate协议(protocol)(但它实现了这个方法,因为这段代码有效:),考虑到这里使用了未记录的API,我担心该应用程序会被Apple拒绝。那么,问题是:您如何看待是否使用私有(private)API?这是代码:@interfaceCus

ios - IBM Worklight - 是否可以将 UINavigationController 添加为起始 native 页面?

我正在尝试将基于导航的iOS应用程序集成到IBMworklight中。但是,我无法将UINavigationController添加为其第一个native页面。在教程中,他们只解释了集成一个普通的UIViewController。由于UINavigationController是UIViewController的子类,难道不应该也能集成它吗?有人可以告诉我是否可以使用"WL.NativePage.show"API集成navigationcontroller。目前,我无法弄清楚如何为navigationcontroller对象设置rootviewcontroller。

iOS 8 : UINavigationController popping without animation and then pushing

在我们的应用程序中,有很多地方需要我们快速弹出一个没有动画的ViewController,然后推送一个有动画的新ViewController。我们会做类似的事情[navControllerpopViewControllerAnimated:NO];[navControllerpushViewController:newVCanimated:YES];在iOS8之前,这工作正常并且动画显示新的ViewController滑入当前ViewController,因为导航Controller第一次弹出时没有动画。现在有了iOS8,这似乎已经改变了,现在发生的是顶层ViewController弹

ios - UIScrollView 和 UINavigationController 交互

我刚刚注意到,如果我将UIScrollView作为UIViewController的RootView:-(void)loadView{self.view=[[UIScrollViewalloc]initWithFrame:[[UIScreenmainScreen]applicationFrame]];}我免费获得了很多行为:如果状态栏、导航栏或工具栏存在并且是半透明的,则scrollView会自动设置它的contentInset和scrollIndicatorInsets,并且如果任何导航布局发生变化,则更新属性:[self.navigationControllersetNavigat

iphone - 在自定义 UINavigationController 中强制执行特定 rootViewController 的推荐方法是什么?

我正在构建一个将由其他iPhone开发人员使用的iPhoneSDK。此SDK的主要用途是呈现一个UI,使用户能够完成某个过程。此UI应包装在UINavigationController中,因为它由构成流程的多个UIViewController组成。我希望将使用我的SDK的开发人员初始化我的自定义UINavigationController,然后以他们想要的方式呈现它。我想强制我的自定义导航Controller的rootViewController将是SDK中的特定ViewController,开发人员将无法使用不同的rootViewController对其进行初始化。实现此目标的推荐方

ios - 更改 UINavigationController 中返回按钮的默认字体

我正在尝试将UINavigationController中后退按钮的默认字体更改为自定义字体UIFont*myCustomFont=[UIFontfontWithName:@"MyCustomFont"size:18];如何将此自定义字体设置为后退按钮?我浏览了该站点中类似问题的其他答案,但没有成功。 最佳答案 [[UIBarButtonItemappearanceWhenContainedIn:[UINavigationBarclass],nil]setTitleTextAttributes:@{UITextAttributeTe

ios - 我们如何在不将 ViewController 对象插入其中的情况下将对象分配到 `UINavigationController`。?

我们如何在不将ViewController对象插入其中的情况下将对象分配给UINavigationController。为什么我需要它在这里:我总共有三个Segmentviews,其中一个是我添加的subView:-(void)Frds{[selfclearSubView];obj=[[Frdsalloc]initWithNibName:@"Frds"bundle:nil];[obj.viewsetFrame:CGRectMake(0,65,320,568)];[self.viewaddSubview:obj.view];}当我访问self.navigationController时,

iOS UINavigationController barHideOnTapGestureRecognizer 和 UIButton 干扰

我开发了一款应用,它利用iOS8功能在点击View时显示或隐藏导航栏。但是,主视图包含一个UIButton,它也对点击起作用。问题是两个“对象”都在接收点击,如果我点击按钮,导航栏会切换其可见性。我可以通过导航Controller访问barHideOnTapGestureRecognizer,但不太确定可以用它做什么来阻止它在点击按钮时响应。有没有办法(除了关闭或更改为“滑动隐藏”)在按下按钮时抑制导航栏的出现/消失? 最佳答案 不要使用标准的barHideOnTapGestureRecognizer。幸运的是,自己动手并不难:ov