Tag: uinavigationcontroller

一切……无处不在……

您是否曾经尝试过在项目中使用MVC,并且一直都在考虑故事板,NavigationController,Segue,ViewController和视图? 有时,您尝试将上述所有信息传递给模型,而您根本不想使用MVC。 但是幸运的是,SWIFT的功能足以为您解决这些问题。 故事板 我们必须在项目中声明的最重要的内容是Storyboard,这是您进行其余操作之前必不可少的。 我几乎在每个项目中都使用了SWIFT功能,但是您可以通过这些代码查找许多其他内容,也许您找到了您真正想要的东西。

自定义导航过渡

因此,在控制器之间进行自定义导航过渡是一件很酷的事情。 我决定尝试一下它,最终结果看起来很不错。 为什么不与他人分享。 这是每个使用iOS的人都一定会习惯的默认过渡。 我的想法是创造一些不同的东西。 我希望过渡可以并排进行,其中一个控制器将另一个推开,反之亦然。 最重要的是,所有ViewController都具有全局背景,以使它们从一个过渡到另一个,而不会看到控制器边界发生变化。 因此,要执行此方案,我们需要执行以下步骤: 制作一个自定义的导航控制器,它将监视所有交互; 制作一个自定义的动画器,以处理控制器帧的动画; 制作一个自定义的交互器,该交互器​​处理屏幕平移以允许交互的“弹出”过渡; 创建自定义的交互式背景; 我们从简单好开始-创建一个新的单视图项目。 创建一个UINavigationController子类和3个UIViewController子类。 所有这些都将不再需要,但它们可以帮助阐明观点。 有时。 Main.storyboard文件是通过以下方式设置的: UINavigationController,已设置为我们的自定义导航类(BaseNC)的子类,它与VC1具有RootViewController关系。 然后,VC1的“推”按钮与“ VC2”绑定在一起。 VC2至VC3相同。 最后,VC3具有一个与其控制器类关联的自定义操作,在该类中它执行popToRootViewController调用。 这里没什么特别的,只需设置即可。 设置完成,移至BaseNC类以开始设置。 持续时间,交互和句柄都可以修改和定制,以满足任何人的需求。 随时在这里签出该项目。 感谢您的阅读和愉快的编码。 — R 首先接收与移动开发相关的新故事。 —点击该跟随按钮 推特:@ ChiliLabs www.chi.lv

UINavigationController和UITabBarController以编程方式(快速4)

UITabBarControllers和UINavigationControllers是iOS开发的主要控制器,它们是在一组ViewController之间导航的好方法。 iOS Clock应用程序是使用UITabBarController作为控制应用程序的主要方式的完美示例。 在线上有大量关于如何使用界面生成器创建UITabBarControllers和UINavigationControllers的教程,但是要完全了解应该如何使用它们,最好知道如何以编程方式从头开始构建它们。 UINavigationController 苹果给出了一个很棒的描述。 “导航控制器管理视图控制器的堆栈,以提供用于分层内容的向下钻取界面。 导航控制器的视图层次结构是自包含的。 它由导航控制器直接管理的视图和由您提供的内容视图控制器管理的视图组成。 每个内容视图控制器管理一个不同的视图层次结构,导航控制器协调这些视图层次结构之间的导航。” UITabBarController “您可以使用标签栏控制器将您的应用组织为一种或多种不同的操作模式。 标签栏控制器的视图层次结构是自包含的。 它由选项卡栏控制器直接管理的视图和由您提供的内容视图控制器管理的视图组成。 每个内容视图控制器管理一个不同的视图层次结构,选项卡栏控制器协调视图层次结构之间的导航。” 开始吧! (作为附带说明,为简单起见,我们将在AppDelegate.swift中创建控制器。还要确保为程序化ViewController更新AppDelegate(window)和info.plist(删除Main.storyboard)。) 1.让我们创建一个标签栏控制器和3个视图控制器。 本质上,我们要做的就是创建视图控制器的实例,并将其分配给标签栏控制器的viewControllers属性。 因此,让我们首先创建一个tabBarController。 让tabBarController = UITabBarController() 然后,继续创建三个View Controller(默认ViewController的实例)。 我将它们命名为收藏夹VC,下载VC,历史记录VC,并将视图的标题和backgroundColor属性分别更新为橙色,蓝色和青色。 让收藏夹VC = ViewController() favoriteVC.title =“收藏夹” favoriteVC.view.backgroundColor = UIColor.orange 让downloadsVC = ViewController() downloadsVC.title =“下载” downloadsVC.view.backgroundColor = UIColor.blue 让historyVC = ViewController() historyVC.title =“历史记录” historyVC.view.backgroundColor = UIColor.cyan 2.在我们的默认ViewController中创建一个按钮,并添加一个目标动作。 此步骤是可选的,但为了查看viewControllers与导航栏的后退按钮进行交互,我们将在viewController中添加一些按钮。 在viewDidLoad()中,包括以下内容: 让按钮:UIButton = […]

我可以使用xcode中的“导航控制器后退button”传递数据

我有2个视图控制器和一个导航控制器。 我们将主要为1和详细为2.当我在主要button,细节打开,主要用后退button打开 好吧,我想改变一个标签文本或一个string在主视图控制器,当我点击一个button和详细信息视图控制器上的返回button。 我怎么能做到这一点? if([segue.identifier isEqualToString:@"deneme"]) { MainViewController *main=[segue destinationViewController]; main.detay=@"denme"; } 我尝试了prepareForSegue和function,我写了,但我不能。

从Thirdviewcontroller到FirstViewcontroller

我的故事板中有两个navigationviewcontroller。 Firstviewcontroller链接到firstnavigationcontroller。 ThirdViewcontroller链接到第二个导航控制器。 然后我想知道如何从thirdviewcontroller去firstviewcontroller。

如何传回数据

这是我的故事板的场景。 UINavigationController – > UITableViewController – > push segue – > UIViewController 我知道如何将UITableViewController的数据传递给UIViewController 。 但是,如何将数据传递回UITableViewController ?( UIViewController有一个带有后退button的导航栏)

如何在导航控制器的底部创build一个持久button?

我有一个基于主/细节的iPhone应用程序。 如果不使用标签式导航风格的应用程序,我该如何在导航控制器的底部创build一个持久button(我希望在每个视图上都有)。 请线框(其加号button)。 我已经尝试在底部的工具栏中添加一个button栏项目,但由于某种原因,它不会显示出来。 我正在使用xcode 8和ios 10。 作为参考,我创build了一个自定义导航控制器类,并插入下面的代码 #import "MainNavigationController.h" @interface MainNavigationController () @end @implementation MainNavigationController – (void)viewDidLoad { [super viewDidLoad]; NSLog(@"Testing"); // Do any additional setup after loading the view. NSMutableArray *buttonsArray = [[NSMutableArray alloc] init]; UIBarButtonItem *myButton1=[[UIBarButtonItem alloc] initWithTitle:@"button 1" style:UIBarButtonItemStylePlain target:self action:@selector(toolbarButtonPressed1:)]; [buttonsArray addObject:myButton1]; UIBarButtonItem *myButton2 = [[UIBarButtonItem alloc] initWithTitle:@"button 2" style:UIBarButtonItemStylePlain […]

如何在iOS 11的导航栏上设置大标题?

我正在为iOS 11或更高版本创build应用程序,要求在导航栏的左侧设置大标题。 请有人帮忙解决如何设置,它应该只适用于iOS 11或更高版本。 给我一些其他的build议,通过应用程序(支持iOS 8或更高版本)来维护此function。 提前致谢。

将视图推送到不在相同视图层次结构中的UINavigationController

我有两个表格视图。 一个显示项目列表,说食谱名称。 另一个显示配方名称与描述和图像。 具有更详细视图的那个是导航控制器的一部分,所以点击其中一个项目会将另一个视图推到栈顶。 问题是我有食谱名称的列表,当我点击的时候,我想把这个配方的细节放到导航控制器堆栈上。 这两个视图不在同一个视图层次,所以我不能以正常的方式推动它。 我已经尝试将视图的内容传递到主列表上的方法,但没有做任何事情。 那么,有没有办法在另一组视图中find导航控制器,这样我就可以将视图推到一个视图上了?

将数据从UIViewController传递给UIViewController

所以我有这个UINavigationController,我正在第一个移动到下一个视图,比我想点击“后退”button,并返回到第一个视图与数据,我保存到第二个视图上的“strAddress” 。 我想在“lblShowStr.text”的第一个视图上显示数据。 我怎么能做到这一点? 我搜查了所有的网页,发现有些人写了,但不明白他们在那里被告知了什么。 谢谢!