![](https://img-blog.csdnimg.cn/20190918140129601.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
oc学习笔记
oc学习笔记
心湖中的石子
这个作者很懒,什么都没留下…
展开
-
IOS开发教程第一季之03多线程day3--最大并发数,队列的暂停,取消和恢复、操作优先级、线程监听、多线程下UITableView显示图片案例
1.创建定时器原创 2020-08-07 19:55:32 · 399 阅读 · 0 评论 -
IOS开发教程第一季之03多线程day2--定时器,消息循环,线程池、异步、同步、队列、阻塞、延迟、单例、调度组,NSOperation、线程间通信
1.创建线程原创 2020-08-05 23:37:22 · 235 阅读 · 0 评论 -
IOS开发教程第一季之03多线程day1--创建线程、桥接、线程状态、线程优先级、多线程操作共享资源,数据属性
1.创建线程创建线程使用pthread_create#import "ViewController.h"#import <pthread/pthread.h>@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; }- (void)touchesBegan:(NSSet<UITouch *> *)to原创 2020-08-01 16:28:04 · 166 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day12-14合并IOS学习XXX--国际化
1.应用程序名字的国际化添加程序对语言的支持创建文件(InfoPlist.strings)名字必须一致不能乱写单击这个文件,点开展开箭头,找到对应的中英文文件写key(infoplist当中真实的key)value,格式“”=“”2.stroyboard的国际化添加程序对语言的支持勾选对应的多语言stroyboard上拖拽控件在stroyboard上展开箭头,编辑各个控件在中英文或多语言状态下显示的文字key-value3.代码的国际化添加程序对语言的支持添加一个Loca原创 2020-07-29 09:54:30 · 183 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day11合并IOS学习022--彩票
1.界面搭建-暂停,有些过时方法不能在ios12里使用,并且会影响整个项目,暂时停止后续三天课程。等到查资料解决之后,在进入该课程学习原创 2020-07-29 09:52:55 · 126 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day11合并IOS学习022--大转盘
1.UIDynamic中的三个重要概念原创 2020-07-28 16:32:28 · 159 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day10合并IOS学习021--svn
1.UIDynamic中的三个重要概念原创 2020-07-27 18:09:10 · 77 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day9合并IOS学习020--UIDynamic,重力、碰撞、甩行为、附着行为、推行为
1.创建并实现手势的基本步骤原创 2020-07-26 22:43:21 · 181 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day8合并IOS学习019--敲击、长按、轻扫、旋转,CALayer、锚点,CADisolayLink刷新,核心动画,关键帧动画,组动画,转场动画,画板案例
1.创建并实现手势的基本步骤点击手势#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *imageview;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; //1.创建点击手势 UITapGestureRecogni原创 2020-07-24 20:12:47 · 204 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day7合并IOS学习018--响应者对象、单多点触摸,手势解锁案例
1.矩阵操作原创 2020-07-23 20:57:46 · 231 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day6合并IOS学习017--矩阵操作,图形上下文,绘制文字和图片,裁减,沙盒的存取,保存到相册,开启图形类型的上下文,绘制圆环,水印,屏幕截图
1.矩阵操作矩阵操作主要包括缩放、旋转、平移1、缩放CGContextScaleCTM(<CGContextRef _Nullable c#>, <CGFloat sx#>, <CGFloat sy#>)2、旋转CGContextRotateCTM(<#CGContextRef _Nullable c#>, <#CGFloat angle#>)3、平移CGContextTranslateCTM(<#CGContextRef原创 2020-07-21 22:36:30 · 169 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day5合并IOS学习016--绘图的5种方式、饼图,柱状图、自定义进度条
1.绘图基本原理创建一个蓝色view,并指定其对应的类为FRBlueViewFRBlueView.m#import "FRBlueView.h"@implementation FRBlueView//重新默认绘图方法- (void)drawRect:(CGRect)rect { // 获取当前上下文(草稿纸 CGContextRef ctx=UIGraphicsGetCurrentContext(); //拼接路径,同时把路径添加到上下文 //先移动到原创 2020-07-20 22:55:52 · 190 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day4合并IOS学习015--Segue小专题、沙盒存储小专题、归档/解档、TabBarController、App主流UI框架结构
10.Segue的一些知识在stroyboard中有如下控制器viewController.m#import "ViewController.h"@interface ViewController ()- (IBAction)blueClick:(id)sender;- (IBAction)purClick:(id)sender;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad原创 2020-07-19 19:19:07 · 289 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day3合并IOS学习014--Segue通讯录案例
1.快捷添加rootViewController和navigateController默认Main.storyboard中点选view图标,菜单Editor–Embed in–NavigateController了,将直接将rootViewController和navigateController一同创建2.文本框的代理监听界面:指定控制器为LoginViewController类LoginViewController.m#import "LoginViewController.h"@i原创 2020-07-18 09:49:17 · 390 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day2合并IOS学习013--App启动过程、多控制器管理
1.UIPickerView原创 2020-07-16 12:01:13 · 240 阅读 · 0 评论 -
IOS开发教程第一季之02UI进阶day1合并IOS学习012--PickerView、DatePicker
1.UIPickerView作用:从指定的数据源中选择数据通常以UITextFiled的inputView出现,当选中的某个文本框时,弹出的键盘显示该控件注意:使用pickerView之前需要指定数据源对象和代理对象需要使用到两个协议:UIPickerViewDataSource数据源协议和UIPickerViewDelegate代理协议...原创 2020-07-14 23:42:27 · 123 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day10合并IOS学习011布局与屏幕适配(完结)
1.AutoLayoutautoResizing通过父容器的大小来进行大小的适配。子控件的frame不再写死。而是使用参照以后主要使用autoLayout布局不仅通过针对父容器的大小位置,还要考虑容器与容器之间的相对位置和相对大小来进行布局。使用size classes+AutoLayout针对不同屏幕运用不同规则PS:autoresizing和autolayout是互斥的...原创 2020-07-13 12:45:18 · 118 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day9合并IOS学习010单元格模板(应用管理)
1.仿QQ界面UITableView静态单元格原创 2020-07-10 21:51:28 · 180 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day9合并IOS学习009仿QQ界面(UITableView静态单元格)、仿QQ好友列表
1.仿QQ界面UITableView静态单元格使用静态单元格,必须使用UITableViewController控制器静态单元格使用建议:1> 先保留1个Section, 1个Cell。2> 设置好这个Cell以后, 在设置section的个数以及每个section中行的个数。静态单元格设置大致步骤:1> 选中TableView设置Content为static cell(静态单元格)2> 删除静态单元格, 只保留一个。3> 选中TableView设置st原创 2020-07-08 00:41:58 · 179 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day8合并IOS学习008----控件(UITableView04聊天机器人)
1.加载xib的两种方法原创 2020-07-07 12:01:27 · 191 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day7合并IOS学习007----控件(UITableView03微博)
1.加载xib的两种方法//加载xib的两种方法 UINib* nib=[UINib nibWithNibName:@"tgs" bundle:nil];//nil表示使用mainBundle,根据xib文件创建nib对象 UIView* view=[[[nib instantiateWithOwner:nil options:nil] firstObject]];//获取xib中的某个view对象(控件)2.微博案例plist文件...原创 2020-07-06 00:15:49 · 130 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day7合并IOS学习006----控件(UITableView02团购网站)
1.UITableView概述原创 2020-07-04 10:23:57 · 148 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day6合并IOS学习005----控件(UITableView01)
1.UITableView概述UITableView的两种样式UITableViewStylePlainUITableViewStyleGroupedUITableView的如何展示数据需要一个数据源DataSource来显示数据UITableView会想数据源查询一共有多少行数据,以及每一行显示什么数据等凡是遵守UITableViewDataSource协议的OC对象,都可以是UITableView的数据源2.UITableView概述–DataSource属性UITableView原创 2020-07-01 23:13:48 · 171 阅读 · 0 评论 -
IOS开发教程第一季之01UI基础day5合并IOS学习004----控件(ScrollView、pageController,NStimer)
1.设置一个ScrollView–ContentSize#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIScrollView *scrollView;@property (weak, nonatomic) IBOutlet UIImageView *imgView;@end@implementation ViewController- (void)v原创 2020-06-30 14:19:14 · 149 阅读 · 0 评论 -
IOS学习003超级猜图--整合案例
1.改变状态栏文字颜色原创 2020-06-27 17:43:48 · 126 阅读 · 0 评论 -
OC学习笔记之013IOS应用开发入门--控件4表格、表格控制器
1.创建一个简单的单元格UITableView继承了UIScrollView,他具有UIScrollView的功能,UISCrollView中主要封装了UITableViewCell单元格控件,因此,UITableView默认可以对单元格进行滚动。在默认状态下,所有的UITableViewController实例被自动设定为UIScrollView委托ViewController.h文件#import <UIKit/UIKit.h>@interface ViewController原创 2020-06-18 16:04:20 · 1157 阅读 · 0 评论 -
OC学习笔记之012IOS应用开发入门--控件3UIVisualEffectView、微调器、网页控件UIWebView、工具条(UIToolBar)
1.模糊滤镜-UIVisualEffectView只继承UIview而没有继承UIControl因此只作为静态控件使用@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *myImageView;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; //创建一个light风格的UI原创 2020-06-15 00:57:16 · 275 阅读 · 0 评论 -
OC学习笔记之011IOS应用开发入门--控件2进度条、拖动条、警告框、日期选择器、选择器
1.进度条-UIProgressView#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIProgressView *progress1;@property (weak, nonatomic) IBOutlet UIProgressView *progress3;@property (weak, nonatomic) IBOutlet UIProgressVie原创 2020-06-12 00:44:46 · 613 阅读 · 0 评论 -
OC学习笔记之010IOS应用开发入门--控件1按钮、文本、开关、分段、图像
1.UICtontrol基类方法定制UICongtrol外观2.按钮控件–设置按钮不同的状态的title设置UIButton外观#import "ViewController.h"@interface ViewController ()//创建一个按钮控件@property (weak, nonatomic) IBOutlet UIButton *myBtn;@property (weak, nonatomic) IBOutlet UIButton *myBtnEnable;@pr原创 2020-06-10 09:36:03 · 421 阅读 · 0 评论 -
OC学习笔记之009IOS应用开发入门
1.NSData与NSMutableData原创 2020-06-08 15:17:38 · 152 阅读 · 0 评论 -
OC学习笔记之008文件IO
1.NSData与NSMutableData这两个data的作用是讲将数据读入nsdata,并使用nsdata输出数据int main(int argc, const char * argv[]) { @autoreleasepool { //使用nsdata读取指定url对应的数据 NSData* data=[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.baidu.com"]]; NSLog原创 2020-05-26 10:47:34 · 477 阅读 · 0 评论 -
OC学习笔记之007Foundation框架--字符串、数组、字典、谓词
1.字符串三种方法创建字符串使用unicode字符数组使用char风格字符串从文件创建int main(int argc, const char * argv[]) { @autoreleasepool { unichar data[6]={97,98,99,100.101,102}; //1、使用unicode数值数组初始化字符串 NSString* str=[[NSString alloc]initWithCharacters:data length:6];原创 2020-05-24 01:09:39 · 315 阅读 · 0 评论 -
OC学习笔记之006面向对象包装类,协议
1.包装类NSValue和NSNumberNSValue是NSNumber的父类,NSNumber是更具体的包装类,包装各种数值类型,主要有三类方法+numberWithXXX:类方法,直接将特定类型的值包装成NSNumber对象。-initWithXXX:实例方法,先创建一个NSNUMber对象,再用一个基本类型的值来初始化NSNumber-XXXValue:实例方法,返回该NSNumber对象包装的基本类型的值int main(int argc, const char * argv[]) {原创 2020-05-21 21:05:59 · 148 阅读 · 0 评论 -
OC学习笔记之005面向对象封装、继承、多态
1.访问控制符@private@package//同一映像可访问,框架范围内@protected@public2.合成存取setter、getter#import <Foundation/Foundation.h>@interface User:NSObject//使用@property可以不用再写setter和getter@property (nonatomic) NSString* name;@property NSString* pass;@property NSDa原创 2020-05-20 15:16:43 · 164 阅读 · 0 评论 -
OC学习笔记之类005面向对象基础
1.定义并实现类#import <Foundation/Foundation.h>@interface Person : NSObject{ NSString* _name; int _age;}//定义了一个setName:andAge:方法-(void) setName:(NSString*) name andAge:(int) age;//定义一个say方法-(void) say:(NSString*) content;//定义一个不带形参的info方法-(NS原创 2020-05-17 19:24:57 · 179 阅读 · 0 评论 -
OC学习笔记之类004指针、结构体、块
1.指针变量及基本用法int main(int argc, const char * argv[]) { @autoreleasepool { int a=100; int* point; point=&a; NSLog(@"%p",point);//输出0x7ffeefbff5ac,为什么总是这个地址 NSLog(@"%d",*point);//把值取出 }}输出2020-05原创 2020-05-15 16:48:50 · 223 阅读 · 0 评论 -
OC学习笔记之类003函数等
1.函数的定义和声明#import <Foundation/Foundation.h>int add(int a,int b){//函数需要先声明后使用 int result=a+b; return result;}NSString * sayhi(NSString *name,NSString *message){ return [NSString stringWithFormat:@"%@:您好,%@",name,message];}int main(i原创 2020-05-14 00:20:14 · 223 阅读 · 0 评论 -
OC学习笔记之类002数据类型
1.基本数据类型及打印#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { int a=100; float b=12.34; NSString *c=@"hello world"; NSDate *date=[NSDate date]; NSLog(@"%d\n",a)原创 2020-05-13 19:51:57 · 165 阅读 · 0 评论 -
OC学习笔记之类001(IOS开发从入门到精通)
1.接口的声明尽管接口声明是类声明的一部分,但实际上oc将接口和实现分开是有其好处的,这样接口声明部分可以单独拿出来使用(import),而oc的类则有接口声明部分和接口的实现部分共同组成@interface Person : NSObject{ NSString * name; int age; NSString * major;}-(void)setName:(...原创 2020-01-26 11:43:46 · 242 阅读 · 0 评论 -
IOS开发教程第一季之UI基础day3-003
1.呼出控件窗口快捷键原创 2019-12-16 09:23:01 · 116 阅读 · 0 评论