本章类容:介绍如何新建一个页面,打开另一个页面

1.在前面中,在工程Appdelegate.m 里面程序第一个走的方法,新建一个窗口,视图,控制器,可视化等,

2.然后在ViewController.m里面viewDidLoad()方法里面 随便写上点信息,方便分辨第一页和第二页,添加个按钮通过点击调转到第二页面

代码:

// 窗口背景色

self.view.backgroundColor = [UIColor whiteColor];

#pragma make UILable //《编译器里面的标记,便于查找》

  UILabel *lab = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 414, 50)];

// 文字

[lab setText:@"ViewController"];

//文字颜色

lab.backgroundColor = [UIColor whiteColor];

// label 的背景色

lab.backgroundColor = [UIColor darkGrayColor];

//文字居中

lab.textAlignment = NSTextAlignmentCenter;

//文字大小

[self.view addSubview:lab];

#pragma make UIButton

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

//按钮文字

[btn setTitle:@"下一页" forState:UIControlStateNormal];

//按钮颜色

[btn setTintColor:[UIColor blueColor]];

//按钮位置

btn.frame = CGRectMake(150, 500, 80, 35);

//背景颜色

btn.backgroundColor = [UIColor blueColor];

[btn addTarget:self action:@selector(BtnClick:) forControlEvents:UIControlEventTouchUpInside];//《按钮事件》

//添加到窗口

[self.view addSubview:btn];

//添加面ban

UIView *yellowView = [[UIView alloc]init];

//用Bounds

yellowView.bounds = CGRectMake(0, 0, 150, 150);

//用函数获取 宽高

// yellowView.bounds = CGRectMake(0, 0, CGRectGetWidth(self.view.frame), CGRectGetMidX(self.view.frame));

//通过算法定位到中间   前面两个点为set get 方放的点 后面为c语言的结构

//yellowView.center = CGPointMake(self.view.frame.origin.x/2, self.view.frame.origin.y/2);

yellowView.center = self.view.center;

yellowView.backgroundColor = [UIColor yellowColor];

[self.view addSubview:yellowView];

UIView *blueView = [[UIView alloc] init];

blueView.bounds = CGRectMake(0, 0, CGRectGetWidth(yellowView.frame), CGRectGetHeight(yellowView.frame));

//蓝色面板的位置

blueView.center = CGPointMake(self.view.center.x - 75 , self.view.center.y - 75 );

blueView.backgroundColor = [UIColor blueColor];

[self.view addSubview:blueView];

//改变视图同意页面的层次

[self.view sendSubviewToBack:yellowView];

4.command + n 新建一个类,并且在ViewController.m 到如新建类

5.按钮事件:

-(void)BtnClick:(UIButton *)button

{

//创建第二个页面 刚才创建的类初始化一个对象

DetaiViewController *dvc = [[DetaiViewController alloc]init];

//调用此方法推送到第二个页面  由当前控制去 推送到 第二个 dvc 页面 推送后要做的事为空;

[self presentViewController:dvc animated:YES completion:nil];

  //图片推送的方式

dvc.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;    //翻转样式

//dvc.modalTransitionStyle = UIModalTransitionStyleCoverVertical;    //图片缩回

//dvc.modalTransitionStyle = UIModalTransitionStylePartialCurl;    //闪切图片

//dvc.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;    //渐变

}

5.打开二个页面随便设置个背景颜色等,就可以看到效果了。

6.如何返回到第一页,来到新创建的第二个类里面,在程序第一次走的viewDidLoad 方法里面 添加个UIButton 按钮 并且添加上点击事件

#pragma make UIButton

UIButton * btn = [UIButton buttonWithType:UIButtonTypeCustom];

btn.frame = CGRectMake(150, 500, 80, 35);

[btn setTitle:@"上一页" forState:UIControlStateNormal];

[btn setTintColor:[UIColor yellowColor]];

btn.backgroundColor = [UIColor blueColor];

[btn addTarget:self action:@selector(BtnClick:) forControlEvents:UIControlEventTouchUpInside];

[self.view addSubview:btn];

//点击事件BtnClick()的方法 ,销毁当前页面,

-(void)BtnClick:(UIButton *)button{

//通过模态推送出来,销毁掉创建的页面

[self dismissViewControllerAnimated:YES completion:nil]; // completion:结束后做什么

}

// 完整的页面切换就完成了。

ios 初体验<页面切换>的更多相关文章

  1. ios 初体验<UIButton 控件>

    1.创建UIButton 跟其他方式不同,不是直接alloc,init 创建 用工厂化方式创建 UIButton *sureBtn = [UIButton buttonWithType:UIButto ...

  2. ios 初体验<UILabel控件>

    创建控件: UILabel *label = [[UILabel alloc]init]; //设置控件大小 label.frame = CGRectMake(50,100,300,40);//分别为 ...

  3. Unity3d IOS中的IGUI控件

    Unity3d IOS中的IGUI控件 @灰太龙  群63438968 我讲一下IOS中用的UI,我们采用IGUI,需要使用IGUI的高版本,在Unity3d 4.2中也可以使用的! 之前IGUI有个 ...

  4. Xamarin iOS教程之页面控件

    Xamarin iOS教程之页面控件 Xamarin iOS 页面控件 在iPhone手机的主界面中,经常会看到一排小白点,那就是页面控件,如图2.44所示.它是由小白点和滚动视图组成,可以用来控制翻 ...

  5. iOS学习之UIPickerView控件的关联选择

    接上篇iOS学习之UIPickerView控件的简单使用 接着上篇的代码 http://download.csdn.net/detail/totogo2010/4391870 ,我们要实现的效果如下: ...

  6. IOS版App的控件元素定位

    前言 Android版App的控件元素可以通过Android studio自带的工具uiautomatorviewer来协助定位! IOS版App的控件元素可以通过Appium来实现(未实现),或ap ...

  7. iOS中UIButton控件的用法及部分参数解释

    在UI控件中UIButton是极其常用的一类控件,它的类对象创建与大多数UI控件使用实例方法init创建不同,通常使用类方法创建: + (id)buttonWithType:(UIButtonType ...

  8. IOS开发中设置控件内容对齐方式时容易混淆的几个属性

    IOS开发中四个容易混淆的属性: 1. textAligment : 文字的水平方向的对齐方式 1> 取值 NSTextAlignmentLeft      = 0,    // 左对齐 NST ...

  9. iOS学习之基础控件

    一.UILabel      1.UILabel(标签):是显示文本的空间.在App中UILabel是出现频率最高的控件.      2.UILabel是UIView的子类,作为子类一般是为了扩充父类 ...

  10. iOS面试题03-UI控件

    UI控件面试题 1.怎么解决缓存池端的问题(cell) 回答:1.>OS中不存在缓存池的情况,因为通常我们iOS开发,对象都是在需要的时候才会创建, 有种常用的说话叫做懒加载,还有在UITabl ...

随机推荐

  1. Java 方法重载,方法重写(覆盖),继承等细节注意

    1.方法重载(method overload)的具体规范 如果有两个方法的方法名相同,但参数不一致,那么可以说一个方法是另一个方法的重载. 一.方法名一定要相同. 二.方法的参数表必须不同,包括参数的 ...

  2. Ubuntu下安装codeblocks

    ubuntu 16.04LTS 下Code::Blocks 16.01 安装 Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. Code::Blocks是开放源码软件. ...

  3. windows本地提权对照表(转载)

    2003     systeminfo>C:\Windows\Temp\temp.txt&(for %i in (KB3057191 KB2840221 KB3000061 KB2850 ...

  4. IntelliJ IDEA(2017.2)安装和破解(转)

    如果有一定的经济基础,请支持正版,这里提供破解方法. 一.下载并安装, IntelliJ IDEA的官网:https://www.jetbrains.com 二.破解. 百度下载一个 Jetbrain ...

  5. HTML中表格

    HTML表格 [表格table] 表格用table表示,表格中的每一行tr表示,一行中的每一列用td表示 th表示的是:表头.表头中的文字,默认为加粗居中.th要放在tr中,用于替换掉td. [tab ...

  6. mysql 报错 session halted的解决办法,实际工作中的结论。

    写后台程序,发现执行到sql语句时就报错session halted,如下图: 也上网搜过蛮多方法,都不能解决我的问题.后来自己发现了症结所在,其实很简单:执行insert的语句没有包含not nul ...

  7. 2017年最重要的HTML5开发手册,传播正能量

    今天给大家推荐这个HTML5开发手册,希望能帮助正在学习web前端的人,鄙人也是刚学习前端没多久,借助于一点资讯平台能够结识更多前端大牛,这是我的HTML5进阶学习一点资讯群:250777811,里面 ...

  8. HDU 4372 Count the Buildings:第一类Stirling数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4372 题意: 有n栋高楼横着排成一排,各自的高度为1到n的一个排列. 从左边看可以看到f栋楼,从右边看 ...

  9. 6个Linux chkconfig命令实例 - 增加,删除,查看和修改services的自动启动选项

    注意:service的安装目录在/etc/rc.d/init.d下,/etc/init.d 是/etc/rc.d/init.d的链接. chkconfig命令用来安装,查看或修改 services随系 ...

  10. Oracle外键需要建索引吗?

    关于Oracle中的外键,首先要说明一下. 1. 除非已定义了父表主键或唯一键约束,否则oracle将不允许创建子表的外键约束. 2. 在定义外键约束时,oracle不会自动创建索引,所以必须手动在与 ...