美文网首页
iOS-视图控制器

iOS-视图控制器

作者: ysweiwei | 来源:发表于2017-08-08 20:36 被阅读0次

视图控制器指定自定义View

自定义视图类继承UIView。在初始化方法中添加子视图控件。
重写controller的loadView方法。创建自定义视图对象,并指定为controller的view。(注:loadView方法在控制器的view为nil的时候被调用,用于以编程的方式创建view的时候用到。loadView是使用代码生成视图的时候,当视图第一次载入的时候调用的方法,用于使用(写)代码来实现控件。)
将子视图控件对象设置为自定义视图类的属性,在viewDidLoad方法中进行设置:添加action、设置delegate等等。
在controller中添加按钮点击事件实现和代理方法的实现。

一个下案例,点击button跳转到下一界面,在第二个界面中也写一个Button,点击Button返回第一个界面

第一步建立一个工程以后在创建一个视图控制器,起名为SecondViewController。
第二步在第一个视图控制器写button,点击button跳转到下一界面

#import "ViewController.h"
#import "SecondViewController.h"
@interface ViewController ()

@end

@implementation ViewController
#pragma mark 视图将要出现
-(void)viewWillAppear:(BOOL)animated{
    NSLog(@"视图将要出现");
}
#pragma mark 视图已经出现
-(void)viewDidAppear:(BOOL)animated{
     NSLog(@"视图已经出现");
}
#pragma  mark 视图已经出现
-(void)viewWillDisappear:(BOOL)animated{
    NSLog(@"视图已经出现");
}
#pragma  mark 视图已经消失
-(void)viewDidDisappear:(BOOL)animated{
    NSLog(@"视图已经消失");
}
#pragma mark - 
#pragma mark 视图加载完成
- (void)viewDidLoad {
    [super viewDidLoad];
    UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom ];
    button .frame = CGRectMake(100, 100, 100, 100);
    button.backgroundColor = [UIColor redColor];
    [button setTitle:@"按钮" forState:UIControlStateNormal];
    [button addTarget:self action:@selector(buttonAction:) forControlEvents:  UIControlEventTouchUpInside];
    [self.view addSubview:button];
    
}
-(void)buttonAction:(UIButton * )button{
    //创建一个要弹出的界面
    SecondViewController * secondViewControl = [[SecondViewController alloc]init];
    //UIModalTransitionStylePartialCurl:卷叶弹出 UIModalTransitionStyleFlipHorizontal:翻转弹出UIModalTransitionStyleCoverVertical:从下弹出(系统默认)
   secondViewControl.modalTransitionStyle = UIModalTransitionStylePartialCurl;
    //参数1:弹出的界面 参数2:是否以动画的形式弹出 参数3:界面弹出完成之后要进行操作
    //presentViewController:适合弹出一些临时的窗口
    [self presentViewController:secondViewControl animated:YES completion:nil];
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    
}

@end

第三步,在第二个视图控制器中定义Button,实现点击Button返回第一个界面

#import "SecondViewController.h"
@interface SecondViewController ()
@end
@implementation SecondViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor redColor];
    UIButton * button = [UIButton buttonWithType:UIButtonTypeCustom ];
    button .frame = CGRectMake(100, 100, 100, 100);
    button.backgroundColor = [UIColor blueColor];
    [button setTitle:@"按钮" forState:UIControlStateNormal];
    [button addTarget:self action:@selector(buttonAction:) forControlEvents:  UIControlEventTouchUpInside];
    [self.view addSubview:button];  
}
//模态
-(void)buttonAction:(UIButton *)button{
    //返回上一个界面
    [self dismissViewControllerAnimated:YES completion:nil];
}
- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

相关文章

  • 标签视图控制器

    iOS-个人整理15 - 标签视图控制器--UITabBarController iOS UITabBarCont...

  • iOS-APP、应用程序生命周期

    上一篇: iOS-视图、控制器生命周期 前言,之前简单了解控制器视图的声明周期,当然要了解一下应用程序的生命周期。...

  • 模态视图跳转

    需求:A视图控制器中presentB视图控制器,B视图控制器再presentC视图控制器。最后从C视图控制器直接返...

  • iOS-视图控制器

    视图控制器指定自定义View 自定义视图类继承UIView。在初始化方法中添加子视图控件。重写controller...

  • iOS小技巧·把子视图控制器的视图添加到父视图控制器

    把子视图控制器的视图添加到父视图控制器并覆盖 添加子控制器 把子视图控制器的视图添加到父视图控制器的指定容器视图,...

  • iOS_UI_03_视图控制器

    视图控制器 一、自定义视图(label-textField组合视图) 二、视图控制器 三、视图控制器指定视图 四、...

  • 视图控制器和窗口控制器的选择

    视图控制器介绍 视图控制器负责管理视图及其子视图。在macOS中,视图控制器被实现为NSViewControlle...

  • iOS开发UI阶段——第七节 UINavigationContr

    导航视图控制器也是一个视图控制器,TA管理了多个子视图控制器,是系统提供给我们的容器视图控制器 导航视图控制器至少...

  • 预习~

    UITabBarController 标签视图控制器 标签视图控制器:管理没有层次关系的视图控制器 UITabBa...

  • iOS- UI事件传递& 响应

    UI视图相关重要知识点 传送带: iOS- UITableView重用机制 iOS- UITableView数据源...

网友评论

      本文标题:iOS-视图控制器

      本文链接:https://www.haomeiwen.com/subject/ngdxrxtx.html