首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏nimomeng的自我进阶

    ViewController官方文档

    UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainscreen] bounds]; levelViewController = [[LevelViewController alloc] init]; window.rootViewController = levelViewController; [window makekeyAndVisible];

    3.6K20发布于 2019-02-25
  • 来自专栏日常技术分享

    Swift 动态创建ViewController

    class ViewControllerHelper: NSObject { /// 通过ClassName动态创建ViewController /// - Parameter className: calssName /// - Returns: ViewController class func getViewControllerWithCalssName( UIViewController.Type // 1.创建控制器对象 let viewController = viewControllerClass.init() return viewController; } }

    2.3K10发布于 2020-07-28
  • 来自专栏KyXu

    【iOS 开发】ViewController 减负记录

    前言 最近在重构一个以前写的老项目,在尝试给之前的 ViewController 减负,尽量抽离代码到其他文件。 ---- 整合常量 以前喜欢在 ViewController 的顶部(class 外面)写一些全局变量,这样虽然可以写一次创建的代码,就可以在整个项目的任意地方使用。 但是,基本上你不可能只有一个 ViewController,有了这种习惯之后,会让全局变量没有逻辑地分散在不同的代码文件里,不易于管理(甚至可能会出现同一个东西以不同的名字被创建了多次的情况),而且代码可读性会严重降低 所以如果想要从之前臃肿的 ViewController 里面抽离到代码到新的类,一定要注意 Model 的命名问题。 比如说我现在要清理缓存,清理缓存这种事情应该说和当前的 ViewController 是没什么耦合性可言的,完全可以把这部分代码剥离出来,那么如果这时候我根据清理的具体内容不同,抽象出了三个函数: func

    79410发布于 2019-04-11
  • 来自专栏大宇笔记

    iOS ViewController生命周期

    iOS 显示是 约束 -> 布局 -> 显示的过程,有时候你操作改变frame没有反应是因为还没有确定frame TestCode ---- // // ViewController.swift All rights reserved. // import UIKit class ViewController: UIViewController { override func

    74130发布于 2020-01-13
  • 来自专栏全栈程序员必看

    iOS 在TabViewController中的一个ViewController跳转到另一种ViewController

    setSelectedIndex:2]; 參考: http://stackoverflow.com/questions/10307350/any-code-example-of-how-access-viewcontroller-from-uitabbarcontroller

    61510编辑于 2022-07-18
  • 来自专栏丑胖侠

    ZK Spring 整合ViewController层属性注入

    ZK实例化的View/Controller不同于Spring MVC实例化的Controller,不受Spring管理,无法进行注入。

    42330编辑于 2022-11-30
  • 来自专栏c#开发者

    ios开发-载入viewcontroller的几种方式

    Assuming you have storyboard, go to storyboard and give your VC an identifier (inspector), then do: UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil]; UIViewController *vc = [storyboard instantiateViewControllerWithI

    78660发布于 2018-04-12
  • 来自专栏Alan's Lab

    iOS 自定义 ViewController 过渡动画

    就想着自己也来玩一下,顺便把之前没写成的 Custom ViewController Transition 自定义视图控制器过渡的文章也一起搞定了。 视图控制器过渡,就是指图片里那种 ViewController 的过渡效果。(好废话。。。) ,这里可选,与过渡无关 func tabBarController(tabBarController: UITabBarController, didSelectViewController viewController as [UIViewController], viewController)!

    1.8K31发布于 2018-10-19
  • 来自专栏青玉伏案

    IOS开发之获取Storyboard创建的ViewController

    4.下面来编写我们的代码,上面我们用到了TextField,我们需要处理键盘的回收事件,所以我们的ViewController要遵守UITextFiledDelegate协议,实现有关键盘的方法      (1)遵守UITextFieldDelegate协议 1 2 3 4 #import <UIKit/UIKit.h>   @interface ViewController : UIViewController <UITextFieldDelegate> @end ​    (2)在ViewController.m中中进行回调注册和实现协议中相应的方法,代码如下: 1 2 3 4 5 6 7 8 9 10 11

    2.1K80发布于 2018-01-11
  • 来自专栏mukekeheart的iOS之旅

    iOS学习——获取当前最顶层的ViewController

      在iOS开发过程中,我们经常性会需要获取当前页面的ViewController,然后利用ViewController进行一些操作,例如在最顶层的ViewController上展示一个UIAlertController ,或者在最顶层的ViewController上present另一个ViewController,或者进行其他操作。 1 实现思路   通过最底层的ViewController依次向上寻找,直到找到最顶层的ViewController,也就是从UIApplication的keyWindow的rootViewController 在寻找的过程中,要分别考虑当前ViewController是UITabBarController和UINavigationController的情况,同时还要考虑到当前ViewController是否通过  presentViewController:animated:completion: 模态展示了其他ViewController

    7.3K50发布于 2018-02-28
  • 来自专栏Charlie's Road

    Container ViewController自定义转场控制器。

    打开viewController.m创建两个UIButton: @interface ViewController () @property (nonatomic, strong) UIButton * leftBtn; @property (nonatomic, strong) UIButton *rightBtn; @end @implementation ViewController - 在`viewcontroller.m中引入,并添加如下属性方法: // 记录当前是哪个vc @property (nonatomic, strong) UIViewController *currentVC 如果要再项目中使用,第一个ViewController就相当于我们的主页,然后再主页里写这些逻辑就会把主页弄的很臃肿。

    95010发布于 2018-10-19
  • 来自专栏大宇笔记

    iOS 连续多次present 之后,想回到最初的viewController

    // The view controller that was presented by this view controller or its nearest ancestor.

    1.9K10发布于 2019-01-15
  • 来自专栏c#开发者

    ios开发-Storyboard在多个viewcontroller之间导航的实现

    1、不用像Xcode4之前必须删除默认的viewcontroller,然后拖一个navigation controller,然后才能实现导航。 只需要选择默认的viewcontroller ,在菜单上选择editor-embed in- ? 2如果一个页面有个导航路径,需要通过代码判断导航到哪个目的viewcontroller也就是执行哪个Identifier,代码如下 ? 4、返回任意一个viewcontroller,官方称 unwind segues,如果你想让一个viewcontroller可以在其他任意的viewcontroller直接导航回来那么只需要在这个viewcontroller viewcontroller 基本上就这些,希望对初学者有所帮助。

    2.3K50发布于 2018-04-12
  • 来自专栏KyXu

    【iOS开发】修改 present 出来的 ViewController 状态栏颜色

    = UIImagePickerController() let sf = SFSafariViewController(URL: NSURL(string:"")) 像这样用一行代码来创建 ViewController ,使我们丧失了进入这个 ViewController 的内部去调节一些东西的机会。

    1.5K20发布于 2019-04-11
  • 来自专栏工程师的分享

    iOS快速连续的push和pop 同一个ViewController时,系统到底在干啥

    首先,测试代码如下,在一个方法里,进行多次连续push和pop操作,self.residentVC也是原生的UIViewController,这里主要是构造多样的VC

    1.1K10编辑于 2022-08-02
  • 来自专栏Helloted

    View Controller编程指南

    有两种类型的ViewController: 内容ViewController管理你的应用程序内容的一个离散片段,是创建的ViewController的主要类型。 容器ViewController收集来自其他ViewController(称为子ViewController)的信息并以便于导航的方式呈现或以不同方式呈现这些ViewController的内容。 内容ViewController自己管理其所有View。 容器ViewController管理其自己的View以及来自其一个或多个子ViewController的root view。 呈现ViewControllers 呈现ViewController会将当前ViewController的内容替换为新ViewController的内容,通常会隐藏前一个ViewController的内容 在呈现ViewController时,UIKit会在呈现ViewController和呈现的ViewController之间创建一个关系,如图所示。

    2K20编辑于 2022-06-07
  • 来自专栏日常技术分享

    iOS 组件化之CTMediator

    = @"ModuleAPage1ViewController"; NSString * const kCTMediatorActionNativTo_ModuleAPage2ViewController :(NSDictionary *)params{ ModuleAPage1ViewController *vc = [[ModuleAPage1ViewController alloc]init :(NSDictionary *)params{ ModuleAPage2ViewController *vc = [[ModuleAPage2ViewController alloc]init ]; vc.parameter = params; return vc; } @end ModuleAPage1ViewController #import "ModuleAPage1ViewController.h [viewController setHidesBottomBarWhenPushed:YES]; [self.navigationController pushViewController:viewController

    2.4K30发布于 2020-07-10
  • 来自专栏macOS 开发学习

    Mac开发跬步积累(二):NSViewController 转场动画精耕细作

    内嵌在同一个窗口中形式弹出新的ViewController open func presentViewControllerAsSheet(_ viewController: NSViewController 新窗口的形式弹出新的ViewController open func presentViewControllerAsModalWindow(_ viewController: NSViewController Popover的形式弹出新的ViewController open func presentViewController(_ viewController: NSViewController, 必须是同一个 super ViewController,否则会抛出异常错误. transition由父控制器super ViewController进行调用. transition仅在子控制器child ViewController之间进行切换.

    3.4K40发布于 2018-08-23
  • 来自专栏一“技”之长

    iOS 中block结构的简单用法 原

    注意:根据这个机制,如果我们将block用来传值,在block不用时,务必要置为nil,而在实现block的方法里,务必要释放;我们通过代码来解释: 首先,创建三个ViewController,为ViewController1 ,ViewController2,ViewController3; 1、在ViewController1中创建一个按钮,跳转ViewController2 2、在ViewController2中: #import  "ViewController2.h" #import "ViewController3.h" @interface ViewController2 () {      UIButton * im; 中: #import "ViewController3.h" void (^myBlock)(); @implementation ViewController3 -(void)setBlock:(void 不被释放,原因是其成员变量im被block中retain没有释放,我们这样做: @interface ViewController2 () {     UIButton * im;     ViewController3

    77330发布于 2018-08-15
  • 来自专栏网罗开发

    iOS 如何解决 NSTimer 循环引用

    原因 ---- 当你在 ViewController (简称 VC )中使用 timer 属性,由于 VC 强引用 timer,timer 的target 又是 VC 造成循环引用。 解决方案 ---- 在 ViewController 执行 dealloc 前释放 timer(不推荐) 对定时器 NSTimer 封装 苹果 API 接口解决方案(iOS 10.0 以上可用) 使用 中使用代码如下: #import "ViewController1.h" #import "PFTimer.h" @interface ViewController1 () @property ( 再调用如下: #import "ViewController1.h" #import "PFTimer.h" #import "NSTimer+PFSafeTimer.h" @interface ViewController1 时候,打印结果: -[ViewController1 dealloc] 通过 PFProxy 这个伪基类(相当于 ViewController1 的复制类),避免直接让 timer 和 viewController

    1.8K30发布于 2021-04-07
领券