ios 初体验<页面切换>
本章类容:介绍如何新建一个页面,打开另一个页面
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 初体验<页面切换>的更多相关文章
- ios 初体验<UIButton 控件>
1.创建UIButton 跟其他方式不同,不是直接alloc,init 创建 用工厂化方式创建 UIButton *sureBtn = [UIButton buttonWithType:UIButto ...
- ios 初体验<UILabel控件>
创建控件: UILabel *label = [[UILabel alloc]init]; //设置控件大小 label.frame = CGRectMake(50,100,300,40);//分别为 ...
- Unity3d IOS中的IGUI控件
Unity3d IOS中的IGUI控件 @灰太龙 群63438968 我讲一下IOS中用的UI,我们采用IGUI,需要使用IGUI的高版本,在Unity3d 4.2中也可以使用的! 之前IGUI有个 ...
- Xamarin iOS教程之页面控件
Xamarin iOS教程之页面控件 Xamarin iOS 页面控件 在iPhone手机的主界面中,经常会看到一排小白点,那就是页面控件,如图2.44所示.它是由小白点和滚动视图组成,可以用来控制翻 ...
- iOS学习之UIPickerView控件的关联选择
接上篇iOS学习之UIPickerView控件的简单使用 接着上篇的代码 http://download.csdn.net/detail/totogo2010/4391870 ,我们要实现的效果如下: ...
- IOS版App的控件元素定位
前言 Android版App的控件元素可以通过Android studio自带的工具uiautomatorviewer来协助定位! IOS版App的控件元素可以通过Appium来实现(未实现),或ap ...
- iOS中UIButton控件的用法及部分参数解释
在UI控件中UIButton是极其常用的一类控件,它的类对象创建与大多数UI控件使用实例方法init创建不同,通常使用类方法创建: + (id)buttonWithType:(UIButtonType ...
- IOS开发中设置控件内容对齐方式时容易混淆的几个属性
IOS开发中四个容易混淆的属性: 1. textAligment : 文字的水平方向的对齐方式 1> 取值 NSTextAlignmentLeft = 0, // 左对齐 NST ...
- iOS学习之基础控件
一.UILabel 1.UILabel(标签):是显示文本的空间.在App中UILabel是出现频率最高的控件. 2.UILabel是UIView的子类,作为子类一般是为了扩充父类 ...
- iOS面试题03-UI控件
UI控件面试题 1.怎么解决缓存池端的问题(cell) 回答:1.>OS中不存在缓存池的情况,因为通常我们iOS开发,对象都是在需要的时候才会创建, 有种常用的说话叫做懒加载,还有在UITabl ...
随机推荐
- 花了一年时间开发的TTFEditor 字体编辑器
TTF(True Type Font)字库是微软定义的基于windows的标准字库格式.但其由于专利保护以及无法跨平台导致TTF字库在实际应用中无法有效使用. 为此我推出TTFEditor字体编辑软件 ...
- year:2017 month:8 day:3
2017-08-03 JAVAse 1:静态变量和成员变量的区别: 所属不同:静态变量属于类,所以也称为类变量 成员变量属于对象,也称为实例变量 内存中位置不同:静态变量存储余方法区的静态区 成员变量 ...
- [补档][NOI 2008]假面舞会
[NOI 2008]假面舞会 题目 一年一度的假面舞会又开始了,栋栋也兴致勃勃的参加了今年的舞会.今年的面具都是主办方特别定制的.每个参加舞会的人都可以在入场时选择一个自己喜欢的面具. 每个面具都有一 ...
- POJ 1113 Wall (凸包)
Description Once upon a time there was a greedy King who ordered his chief Architect to build a wall ...
- Java ee 与安卓环境搭建个人心得
最近加了个IT俱乐部,第一次作业就是搞定eclipse,完成Java ee 与安卓环境搭建.为此我上网看了好多教程,之前我安装了Java,可以说省了不少事,而且还了解一点安装方法.流程网上都有,但是不 ...
- NYOJ 71 独木舟上的旅行(贪心)
独木舟上的旅行 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客 ...
- C#委托和事件?策略模式?接口回调?还不清楚的赶紧来看我扯
早前学习委托的时候,写过一点东西,今天带着新的思考和认知,再记点东西.这篇文章扯到设计模式中的策略模式,观察者模式,还有.NET的特性之一--委托.真的,请相信我,我只是在扯淡...... 场景练习 ...
- JavaScript基础知识(二)
一.JavaScript事件详解 1.事件流:描述的是在页面中结束事件的顺序 事件传递有两种方式:冒泡与捕获. 事件传递定义了元素事件触发的顺序. 如果你将 <p> 元素插入到 <d ...
- python 如何在一个for循环中遍历两个列表
是我在看<笨方法学python>过程中发现有一行代码看不懂--" for sentence in snippet, phrase:",所以研究了半天,感觉挺有收获的.所 ...
- 在 Android 中如何优雅地配置私密信息
在实际的项目开发中,经常会用到一些第三方的 SDK ,而使用这些 SDK 基本上都是需要配置 APPKEY 或 APPSECRET 等信息.此外 APP 打包时需要 KEYSTORE , STOREP ...