ios-UI1
// AppDelegate.h
// 01-HelloWorld的实现
//
/*
新建工程的时候,Use Core Data:比如本地缓存,
Include Unit test:增加单元测试
Include UI test:UI的测试。 AppDelegate.h:代理
AppDelegate.m
ViewController.h:控制器
ViewController.m:
Main.storyboard:主故事板
Assets.xcassets:图片资源
LaunchScreen.storyboard:启动屏幕,做广告的,
Info.plist:应用的配置信息
Supporting Files:外部拉入的东西
程序从Supporting Files下面的main.m文件启动。找到AppDelegate.m代理,做事情的,找MAin Inteface。 Bundle:唯一标示,
Team:打包需要证书。
Deployment Target:预编译的版本,一般选择7.0,8.0,
MAin Inteface(工程--General):主交互界面,第一个启动的界面(storyboard)。
View Controller:是用来管理View和VIew里面的内容的。 展示给用户的是View。一个控制器只能够管理一个页面,负责处理事件。 也可以自定义一个storyboard作为程序的启动界面,并且新的storyboard要自己拖一个View Controller和View。并且加一个箭头(title--is init View Controller)就有可一个箭头。并且可以拖多个控制器。 可以为View Controller自定义class,右键--new file--Cocoa Touch Class--要继承UIViewController,然后在面板上Class选择自定义的class(My2ViewController),这样就为View Controller绑定了自定义的My2ViewController。
*/ #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @property (strong, nonatomic) UIWindow *window; @end
//
// My2ViewController.h
// 01-HelloWorld的实现
// #import <UIKit/UIKit.h> @interface My2ViewController : UIViewController /*
//只有声明为IBOutlet的属性才能跟storyboard的属性进行关联,放在.m文件的类扩展里面,放在.h文件里面是公有的,放在.m文件里面是私有的。
@property(nonatomic, weak)IBOutlet UILabel *label;
*/
@end
//
// My2ViewController.m
// 01-HelloWorld的实现
//
/*
IBAction:从返回值的角度看,作用相当于void,
IB:Interface Builder一个软件。
只有返回值声明为IBAction的方法,才能根storyboard中的控件进行连线。
*/ #import "My2ViewController.h" @interface My2ViewController () //类扩展,为类扩展属性和方法,类扩展也是匿名分类,放私有的属性和方法, //只有声明为IBOutlet的属性才能跟storyboard的属性进行关联,放在.m文件的类扩展里面,放在.h文件里面是公有的,放在.m文件里面是私有的。
//判断对象在不在内存中是通过是否有强指针指向。 有一个强指针指向着View Control。View Control是不会死的,View Control有一个强指针指着View,View也不会死,View里面也有一个强指针指着label。所以这里是weak不影响,因为他本来就不会死。
@property(nonatomic, weak)IBOutlet UILabel *label; @end @implementation My2ViewController - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
} /*
#pragma mark - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
}
*/ #pragma mark -点击b1
-(IBAction)click1{ //点击2个圈圈分屏通过连线和按钮建立关联,
NSLog(@"");
self.label.textColor = [UIColor redColor];
self.label.text = @"";
} -(IBAction)click2{
NSLog(@"");
self.label.textColor = [UIColor greenColor];
self.label.text = @"";
self.label.backgroundColor = [UIColor blueColor];
} -(IBAction)click3{
NSLog(@"");
// 改变文字的颜色
self.label.textColor = [UIColor redColor]; //self是当前控制器
// 改变文本的内容
self.label.text = @"我是一段红色的文字";
// 改变背景颜色
self.label.backgroundColor = [UIColor greenColor];
// 文字居中
self.label.textAlignment = NSTextAlignmentCenter;
// 改变文字的大小,默认是17,
self.label.font = [UIFont systemFontOfSize:.f];
}
@end
ios-UI1的更多相关文章
- iOS 多线程之NSOperation篇举例详解
这篇博客是接着总篇iOS GCD NSOperation NSThread等多线程各种举例详解写的一个支篇.总篇也包含了此文的链接.本文讲解的知识点有NSBlockOperationClick,队列, ...
- iOS可视化动态绘制连通图
上篇博客<iOS可视化动态绘制八种排序过程>可视化了一下一些排序的过程,本篇博客就来聊聊图的东西.在之前的博客中详细的讲过图的相关内容,比如<图的物理存储结构与深搜.广搜>.当 ...
- 【疯狂造轮子-iOS】JSON转Model系列之二
[疯狂造轮子-iOS]JSON转Model系列之二 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇<[疯狂造轮子-iOS]JSON转Model系列之一> ...
- 【疯狂造轮子-iOS】JSON转Model系列之一
[疯狂造轮子-iOS]JSON转Model系列之一 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 之前一直看别人的源码,虽然对自己提升比较大,但毕竟不是自己写的,很容易遗 ...
- iOS总结_UI层自我复习总结
UI层复习笔记 在main文件中,UIApplicationMain函数一共做了三件事 根据第三个参数创建了一个应用程序对象 默认写nil,即创建的是UIApplication类型的对象,此对象看成是 ...
- iOS代码规范(OC和Swift)
下面说下iOS的代码规范问题,如果大家觉得还不错,可以直接用到项目中,有不同意见 可以在下面讨论下. 相信很多人工作中最烦的就是代码不规范,命名不规范,曾经见过一个VC里有3个按钮被命名为button ...
- JS调用Android、Ios原生控件
在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...
- 告别被拒,如何提升iOS审核通过率(上篇)
iOS审核一直是每款移动产品上架苹果商店时面对的一座大山,每次提审都像是一次漫长而又悲壮的旅行,经常被苹果拒之门外,无比煎熬.那么问题来了,我们有没有什么办法准确把握苹果审核准则,从而提升审核的通过率 ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- Summary of Critical and Exploitable iOS Vulnerabilities in 2016
Summary of Critical and Exploitable iOS Vulnerabilities in 2016 Author:Min (Spark) Zheng, Cererdlong ...
随机推荐
- (转)全文检索技术学习(三)——Lucene支持中文分词
http://blog.csdn.net/yerenyuan_pku/article/details/72591778 分析器(Analyzer)的执行过程 如下图是语汇单元的生成过程: 从一个Re ...
- solr 6.5.1 linux 环境安装
前言 最近在研究搜索引擎,准备搭建一套属于自己的搜索APP,用于搜索的数据我已通过scrapy抓到本地了,现在需要一个搜索引擎来跑这些数据.于是选择了基于Lucene的solr来为我做搜索引擎的工作. ...
- 让ios支持http协议
ios默认只支持https协议,打开info.plist文件,加入以下设置 NSAppTransportSecurity NSAllowsArbitraryLoads
- CAD二次开发控件,dwg控件,网页DWG控件,手机浏览编辑DWG控件
梦想绘图插件5.2(MxDraw5.2) 是国内最强,最专业的CAD开发插件(控件),不需要AutoCAD就能独立运行. 控件使用VC 2010开发,具有30万行代码规模,最早从2007年第一个版本完 ...
- Linux System
Linux System linux 是一个功能强大的操作系统,同时它是一个自由软件,是免费的.源代码开放的,编制它的目的是建立不受任何商品化软件版权制约的.全世界都能自由使用的UNIX兼容产品.各种 ...
- openpyxl操作excel文件
https://blog.csdn.net/hunter_wyh/article/details/78498323
- 创建和获取cookie
创建和获取cookie 制作人:全心全意 cookie:在互联网中,cookie是小段的文本信息,在网络服务器上生成,并发送给浏览器.通过使用cookie可以标识用户身份,记录用户名和密码,跟踪重复用 ...
- Linux命令介绍
资料链接:(Linux基本命令介绍)http://note.youdao.com/share/?id=36c07917f8d3e6437c1e764c3516a3f2&type=note#/ ...
- RabbitMq的简单使用
本篇将介绍RabbitMq的一个简单使用例子,分别介绍生产者如何发送消息,消费者如何接收和处理消息 关于RabbitMQ的知识背景的文章非常多.我对它的总结是,解决高并发请求的瓶颈,将应用程序真正处理 ...
- Docker学习总结(18)——阿里超大规模Docker化之路
12月6-7日,由阿里巴巴集团.阿里巴巴技术发展部.阿里云云栖社区联合主办,以"2016双11技术创新"为主题的阿里巴巴技术论坛上,阿里巴巴研究员林昊分享了阿里超大规模Docker ...