- 博客(139)
- 资源 (1)
- 收藏
- 关注
原创 UIView-绘制相关
一、获取当前绘制环境//获取绘图上下文只有在drawRect:方法中获取有效CGContextRef ctx = UIGraphicsGetCurrentContext();//设置每次清空上一次绘制的内容(initWithFrame方法中做)self.clearsContextBeforeDrawing = YES;二、相关属性设置//设置线宽
2017-04-03 16:31:27
638
原创 UIView
一、initWithFrame;initWithCoder;awakeFromNib首先说一下,这几个方法在我们自定义控件的时候,会经常调用。总结一下这几个方法分别在什么时候调用:- (id)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { //代码 }
2017-04-03 14:49:16
533
原创 UIPageViewController
一、UIPageViewController相关#import "ViewController.h"enum DirectionForward{ ForwardBefore = 1 //向前 ,ForwardAfter = 2 //向后};@interface ViewController () { //当前Page的索引 int pageI
2017-02-27 23:01:56
972
原创 UIPickerView
UIPickerView相关- (void)viewDidLoad { [super viewDidLoad]; //加载资源文件 [self loadResourceFile]; //创建视图 [self initSubViews];}#pragma mark - 加载资源文件-(void)loadResourceFil
2017-02-12 16:34:57
365
原创 UIDatePicker
UIDatePicker相关- (void)viewDidLoad { [super viewDidLoad]; [self createOneDatePicker];}#pragma mark - 创建时间选择器-(void)createOneDatePicker{ CGRect screen = [[UIScreen mainScreen] bounds
2017-02-12 15:30:02
341
原创 UINavigationBar
UINavigationBar相关- (void)viewDidLoad { [super viewDidLoad]; [self navigationBarFun]; }#pragma mark - 导航条相关-(void)navigationBarFun{ CGRect screen = [[UIScreen mainScreen] b
2017-02-11 13:26:35
278
原创 UIToolbar
UIToolbar相关- (void)viewDidLoad { [super viewDidLoad]; [self toolBarFun];}#pragma mark - 工具栏相关-(void)toolBarFun{ CGRect screen = [[UIScreen mainScreen] bounds]; CGFloat to
2017-02-11 12:48:39
298
原创 UIProgressView
UIProgressView相关- (void)viewDidLoad { [super viewDidLoad]; [self progressViewFun];}//进度条相关-(void)progressViewFun{ self.view.backgroundColor = [UIColor blackColor];
2017-02-11 11:33:20
276
原创 UIActivityIndicatorView
UIActivityIndicatorView相关- (void)viewDidLoad { [super viewDidLoad]; //UIActivityIndicatorView方法相关 [self activityIndicatorViewFun];}#pragma mark - UIActivityIndicatorView方法相关-(voi
2017-02-11 11:18:08
290
原创 UIAlertController
UIAlertController相关- (void)viewDidLoad { [super viewDidLoad]; //创建两个button [self createTwoButton]; //创建一个警告框 [self createOneAlertCon]; //创建一个操作表 [self crea
2017-02-11 10:55:20
262
原创 WKWebView
WKWebView#import "ViewController.h"#import @interface ViewController () @property(nonatomic, strong) WKWebView* webView;@end@implementation ViewController- (void)viewDidLoad { [supe
2017-02-09 23:12:00
261
原创 UISlider
UISlider控件#pragma mark - 创建一个滑动控件-(void)createOneSliderCon{ //注意控件的高度设置 UISlider * slider = [[UISlider alloc] initWithFrame:CGRectMake(10, 40, 200, 200)]; slider.backgroundColor = [UICo
2017-02-09 22:10:14
222
原创 UISegmentedControl
UISegmentedControl控件#pragma mark - 创建一个分段控制器-(void)createOneSegmentControl{ NSArray * segments = @[@"left",@"middle",@"right"];//包含段标题的数组 UISegmentedControl * segmentControl = [[UISegment
2017-02-09 21:46:36
536
原创 UISwitch
UISwitch控件#pragma mark - 创建一个开关控件-(void)creatOneSwitch{ //UISwitch控件的大小是固定的 UISwitch * oneSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(40, 40, 0,0)]; [self.view addSubview:oneSwi
2017-02-09 21:16:59
425
原创 UIButton
#pragma mark - 创建一个按钮-(void)createOneButton{ UIButton * btn = [UIButton buttonWithType:UIButtonTypeCustom];#if 0 [btn setBackgroundImage:[UIImage imageNamed:@"test"] forState:UIControlStateN
2017-02-08 21:55:35
249
原创 UIViewController生命周期
/***************************************************************************\ * PS:重要说明 * 视图生命周期的不同阶段会回调视图控制器的不同方法 * \************************************************************************/
2017-02-05 11:06:06
212
原创 iOS基础:Unicode和UTF-8
1、Unicode 和 UTF-8 有何区别参考文章:Unicode 和 UTF-8 有何区别? - 编码 - 知乎
2017-01-29 22:31:30
1215
原创 iOS基础:公钥和私钥
一、公钥和私钥公钥(Public Key)与私钥(Private Key)是通过一种算法得到的一个密钥对(即一个公钥和一个私钥),公钥是密钥对中公开的部分,私钥则是非公开的部分。公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥解密的数据。通过这种算法得到的密钥对能保证在世界范围内是唯一的。使用这个密钥对的时候,如果用其中一个密钥加密一段数据,必须用另一个密钥解密。比如用公钥加
2016-12-14 14:09:50
1399
原创 iOS基础:nil、Nil、NULL和NSNull
一、nil我们给对象赋值时一般会使用object = nil,表示我想把这个对象释放掉;或者对象由于某种原因,经过多次release,于是对象引用计数器为0了,系统将这块内存释放掉,这个时候这个对象为nil,我称它为“空对象”。(注意:我这里强调的是“空对象”,下面我会拿它和“值为空的对象”作对比!!!)所以对于这种空对象,所有关于retain的操作都会引起程序崩溃,例如字典添加键值或
2016-11-20 13:21:16
443
原创 C语言基础:基本数据类型
一、数据类型在计算机中,如果需要保存一个数据,需要向计算机申请足够大的内存空间.来存储这个数据.我们写代码(程序)所操作的内存都指的是内存条的内存.c语言中共有 3 种基本数据类型,可以用来向计算机申请内存空间.使用特定数据类型申请的空间一般都有特定的名字.这个名字就可以代表这个内存空间.这个内存空间的大小取决于数据类型.c语言的基本数据类型是: 整型 , 字
2016-11-20 13:18:29
526
原创 C语言基础:进制
一、进制介绍计算机中的进制: 二进制 八进制 十进制 十六进制十进制 : 由 0-9 的字符组成的.例子: 100000000 二进制 : 由 0和1两种字符组成的. 例子 : 0b10 八进制 : 由 0 - 7 八种字符组成的.例子 : 0755十六进制 :
2016-11-19 23:40:59
724
原创 iOS基础:事件传递
一、事件处理顺序UIApplication - UIWindow - view - subView - subSubView事件响应顺序 如果UIWindow单例 和 UIApplication都无法处理这一事件,则该事件会被丢弃。subSubView - subView - view - UIWindow - UIApplication
2016-10-20 21:54:53
287
原创 UIPageControl
一、- (void)viewDidLoad { [super viewDidLoad]; //UIPageControl翻页指示器 继承自UIControl 驱动型控件(注册点击事件) UIPageControl *pageCon = [[UIPageControl alloc]initWithFrame:CGRectMake(10, 450, 300, 30)];
2016-10-18 17:57:20
498
原创 iOS控件:UIScrollView
一、#import "RootViewController.h"#define SelfViewWidth self.view.bounds.size.width#define SelfViewHeight self.view.bounds.size.height//view的高度不会因为有导航条存在而发生变化#define SelfScrollViewWid
2016-10-18 17:36:25
518
原创 UITextfield
一、UItextfield的属性设置-(void)createTextField{ UITextField * account = [[UITextField alloc] initWithFrame:CGRectMake(40, 80, 200, 40)]; self.account = account; self.account.delegate = self;#
2016-09-25 00:17:43
371
原创 KVC和KVO
一、KVC:键值编码1、创建三个类:Person、Car 和 JsonModelCar类的实现部分如下:#import "Car.h"@interface Car()@property (nonatomic, copy) NSString * carName;@property (nonatomic, assign)int carPrice;@end@implementat
2016-09-22 21:59:24
345
原创 单例模式
一、方法一:通过一次执行代码实现//全局变量static id sharedInstance = nil;+ (instancetype)sharedInstance{//一次执行代码 static dispatch_once_t oncePredicate; dispatch_once(&oncePredicate, ^{ sharedInstance
2016-09-21 11:16:45
267
原创 iOS开发:通讯录获取2
一、通讯录得获取说明:从iOS9之后苹果推出了新的获取通讯录的方式第一步:导入头文件//导入这两个库并包含头文件#import #import 第二步:不同的操作方法//1、创建一个联系人并存储-(void)createContactInfo:(UIButton *)button{//1、创建可变联系人对象并添加信息 CNMutableContact * con
2016-09-20 22:43:56
1425
原创 iOS开发:旋转、缩放、平移
一、创建一个UIView#import "ViewController.h"@interface ViewController ()@property (nonatomic, strong) UIView * myView;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad
2016-09-17 18:21:08
886
原创 iOS基础:UITouch
一、UITouch事件-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{ NSLog(@"触摸"); //1、拿到触摸对象 UITouch * touch = [touches anyObject]; //2、拿到触摸的视图 UIView * vi
2016-09-17 16:47:47
425
原创 iOS开发:电池电量监测
一、电池状态获取及监测#pragma mark - 电池状态获取及监控-(void)checkAndMonitorBatteryState{ UIDevice * device = [UIDevice currentDevice]; //是否允许监测电池 //要想获取电池状态和监控电池状态 必须允许 device.batteryMonitoringE
2016-09-12 15:16:49
7266
原创 程序启动及程序的生命周期
一、程序的启动过程1.程序一启动是先要进入main函数的,main函数是程序的默认入口。/** * 程序的入口函数 */int main(int argc, char * argv[]) { @autoreleasepool { /** * 此函数会创建一个隐式的application对象3
2016-09-12 11:18:20
519
原创 iOS开发:APPicon、LunchImage及LunchScreen的使用
一、设置AppIcon1、从美工处获取到图标图片,并放置在工程中对应的位置。2、配置AppIcon二、启动图片1、从美工出获取到启动图片,并放置在工程中对应的位置2、配置LunchImage3、启动图片命名规则4、启动图片分辨率三、启动屏幕1、lunchScreen设计
2016-09-07 21:30:05
3034
原创 iOS基础:NSBundle
一、bundlebundle是一个目录,其中包含了程序会使用到的资源.这些资源包含了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in).对应bundle,cocoa提供了类NSBundle.二、使用工程中的目录结构1、通过bundle获取资源路径或Url//通过bundle获取资源路径-(void)getPath{
2016-09-07 11:44:13
412
原创 iOS开发:相册或相机调用
#import "ViewController.h"#import //添加静态库头文件@interface ViewController ()//遵守协议并实现协议方法@property (nonatomic, strong) UIImagePickerController * picker;//控制器@property (nonatomic, strong) UIImageVie
2016-09-05 16:38:45
2393
原创 iOS开发:通讯录获取
#import "ViewController.h"#import #import @interface ViewController ()@property (nonatomic, strong) ABPeoplePickerNavigationController * peoplePicker;@property (nonatomic, strong) UILabel * nam
2016-09-05 14:27:20
2525
原创 iOS开发:代码片段
Xcode开发技巧之code snippets(代码片段)作者:wangzz原文地址:http://blog.youkuaiyun.com/wzzvictory/article/details/12163939转载请注明出处如果觉得文章对你有所帮助,请通过留言或关注微信公众帐号wangzzstrive来支持我,谢谢!一、什么是代码片段当在Xcode中输入
2016-08-30 22:07:50
386
原创 iOS开发:Compile Sources(编译来源)与 Copy Bundle Resources(资源文件)
一、Copy Bundle ResourcesCopy Bundle Resources 主要是一些资源文件,打包的时候会被放入app中。常见的内容有:xib文件,图片资源,xxxSDK.bundle,html文件,js文件。举个例子:我曾经碰到一个问题就是我在模拟器和设备中调试的时候都可以运行hmtl和js文件。可是打包给客户发现js失效了,打开包内容发现
2016-08-23 21:17:51
7401
原创 iOS基础:UIAppearance
一、UIAppearance1、这是一个可以改变默认属性的类2、可以显示的控件都可以使用这个类提供的方法来改变默认的显示属性。比如背景色、字体大小等等。3、使用此类的方法时要慎重,因为改变了属性,就相当于把某个类下的所有实例对象的属性改变了,影响的是整个工程。二、常用的两个方法1、+ (instancetype)appearance;[[UIButton appearanc
2016-08-20 12:10:26
371
原创 iOS控件:navigationbar
一、导航条navigation bar1、导航条navigationbar属于导航控制器,一个导航控制器只有一个导航条。2、在一个导航控制器push新页面和pop页面时,导航条是同一个。3、在一个视图控制器内改变了导航条的样式,其它控制器的导航条的样式也会改变,也说明了导航条属于导航控制器,而不是每个视图控制器都有一个导航条。4、导航条的层级结构navigationba
2016-08-19 22:53:08
3289
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人