草庐IT

UINavigationcontroller

全部标签

ios - 导航栏是白色的,而 isTranslucent = false

这个问题在这里已经有了答案:ChangingnavigationbarcolorinSwift(36个答案)关闭5年前。我有一个主导航Controller,我在其中设置背景颜色overridefuncviewDidLoad(){super.viewDidLoad()self.navigationBar.backgroundColor=UIColor.blueself.navigationBar.isTranslucent=false}但是,在那种情况下,我的导航栏会变成全白的。当我将isTranslucent设置为true时,我的导航栏变得透明,但这并不是我真正需要的。我想要只有蓝色的

ios - 使用自定义图像设置所有后退按钮,如 leftBarButtonItem

如何为UINavigationController中推送的ViewController的所有后退按钮设置自定义图像?我的问题是:在位置方面必须看起来像leftBarButtonItem(因为backBarButtonItem本身太靠左了,我似乎无法更改它的水平对齐方式)。必须在所有后退操作上(而不是在每个ViewController上手动设置)。有一个方法setCustomBackButton并在每个ViewController上调用它也不是一个选项,我正在寻找类似UINavigationBar.appearance()的方法,即,在整个过程中应用程序。是这样的:但是在没有我手动设置每

swift - EXC_BAD_ACCESS 发布但未调试

我的产品在从xcode到模拟器和设备的调试中运行良好,但在临时存档和提交时无法运行。我将我的方案切换为作为发布运行,果然,它崩溃了。以下代码部分在varhomeNav行上生成EXC_BAD_ACCESS错误。此方法位于自定义TabBarController中。我还在下面包含了应用委托(delegate)调用,因为这是创建和显示tabcontroller的地方。标签Controller调用://SetsupviewonloadoverridefuncviewDidLoad(){super.viewDidLoad()//SetupandaddhomeviewvarhomeNav=CMSSN

iOS swift : Adding or Moving NavigationBar to bottom of the view controller

我想将导航Controller栏移动到ViewController的底部。我怎样才能完成这项工作?我试过了:self.navigationController!.navigationBar.frame=CGRectMake(0,UIScreen.mainScreen().bounds.height-50,UIScreen.mainScreen().bounds.width,50)这是移动到底部但隐藏了所有其他Controller对象并且后退按钮也没有唤醒。 最佳答案 苏杰联合国,您不应尝试将嵌入式UINavigationContro

ios - 添加彩色图像作为导航栏中的右侧栏按钮项

我添加了一个具有彩色背景图像的右侧导航栏项目:letrightButton=UIBarButtonItem(image:UIImage(named:"avatar")!,style:UIBarButtonItemStyle.Plain,target:self,action:#selector(self.rightNavBarItemAction))navigationItem.rightBarButtonItem=rightButton我没有将图像作为按钮的背景(彩色),而是使用白色占位符。 最佳答案 您可以将图像的渲染模式更新为U

ios - navigationBar.isHidden 和 setNavigationBarHidden 的区别

我有一个ViewController,我从一个隐藏了导航栏的ViewController中推送它。但我想在目标ViewController中显示导航栏。我试过这个声明它没有显示导航栏。self.navigationController?.navigationBar.isHidden=false我试过这个语句是有效的self.navigationController?.setNavigationBarHidden(false,animated:true)我想知道有什么区别? 最佳答案 .isHidden和setNavigationBa

ios - 如何检查当前的 UIViewController 是否是 UINavigationController 的一部分

在我的应用程序中,UIViewController“ProfilVC”是UINavigationController“nav”的一部分。但在另一个场景中,我呈现“ProfilVC”以重用相同的UIViewController,但使用不同的数据。letvc=tweetsStb.instantiateViewController(withIdentifier:"ProfilVC")as!ProfilVCself.present(vc,animated:true,completion:nil)在didSelectRowAt中,我展示了另一个UIViewController。在这里,我需要检查

ios - 从父类访问变量

我正在使用UIPageViewController。我的类-ViewController(包含所有代码并且是数据源)运行PageItemController的实例。我的UIPageControl(pControl)显示在ViewController的导航栏中。我想要如下代码:PageItemControlleroverridefuncviewDidAppear(){letvController=theparentviewcontroller//ViewControllervController.pControl.currentPage=itemIndex}这是如何实现的?

ios - 替换后退按钮但保持滑动以返回

首先,我注意到有一个similarquestion.但是,我想问一下Swift中的解决方案。这是我的代码:overridefuncviewDidLoad(){super.viewDidLoad()navigationItem.leftBarButtonItem=UIBarButtonItem(title:"Button",style:.Plain,target:self,action:nil)}我想替换后退按钮,但要保持滑动以供用户返回导航。但是,这会禁用滑动。我无法在上面的链接中获得可接受的答案和建议的答案。这是我试图翻译成Swift的内容。letappearanceNavigati

ios - 来自 appDelegate 的 popToRootViewController swift

我试图从应用程序委托(delegate)弹出到导航堆栈的RootViewController,但在将obj-c中的工作转换为swift时遇到了一些问题。在obj-c中的作用:UINavigationController*navigationController=(UINavigationController*)self.window.rootViewController;[navigationControllerpopToRootViewControllerAnimated:YES];我的转换尝试:varnavigationController:UINavigationControll