E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ios笔记
ios笔记
: block 详细解析
Block就是Objective-C语言对于闭包的实现。在编程语言中,闭包是函数或引用环境的函数的一个函数或引用-一个存储对该函数的每个非局部变量(也称为自由变量或更高值)的引用的表。bywikipediatranslate这篇文章主要解析一下几点block从源码分析其原理block的内存管理block通过什么方式来修改外部变量structBlock_descriptor{unsignedlong
显生宙
·
2020-03-10 07:11
iOS笔记
之NSUserDefaults
1、NSUserDefault的使用:作用:NSUserDefaults类提供了一个与默认系统进行交互的编程接口。NSUserDefaults对象是用来保存,恢复应用程序相关的偏好设置,配置数据等等。默认系统允许应用程序自定义它的行为去迎合用户的喜好。你可以在程序运行的时候从用户默认的数据库中读取程序的设置。同时NSUserDefaults的缓存避免了在每次读取数据时候都打开用户默认数据库的操作。
SuAdrenine
·
2020-03-08 04:41
iOS笔记
--Day03课堂笔记
关于文档:guides和reference这两种文档是程序员最常看的samplecode里面是大神的代码technical关于自定义代码块:自定义代码块:注意两个井号中间的文字是可以自定义的Xcode快捷键:command+control+上:.m文件和.h文件之间切换control+f可以代替右箭头(常用)control+b可以代替左箭头control+p可以代替上箭头control+n可以代替
提莫不胖
·
2020-03-07 23:44
iOS笔记
--面试题04
问题:1.谈一谈你是怎么封装view的答案:1>把view所有的子控件放进去,子控件里面的传入模型数据拆开给子控件.问题:2.6\7适配怎么进行的答案:1>可以版本适配,也可以系统适配,这样就能保留功能.问题:3.autolayout?答案:1>不用关心xy坐标,能够在各个版本屏幕适配.问题:4.socket?包含的哪些方法答案:1>AsyncSokect的类问题:5.iOS7之前,后台执行内容有
提莫不胖
·
2020-03-07 08:41
iOS笔记
-RunLoop、NSURLConnection(OC)
什么是RunLoop运行循环一个线程对应一个RunLoop,主线程的RunLoop默认已经启动,子线程的RunLoop得手动启动(调用run方法)RunLoop只能选择一个Mode启动,如果当前Mode中没有任何Source(Sources0、Sources1)、Timer,那么就直接退出RunLoopRunLoop作用保持程序的持续运行处理App中的各种事件(比如触摸事件、定时器事件、Selec
Earthliness
·
2020-03-07 02:21
ios笔记
.h文件是头文件,是公开定义类的成员变量以及方法等等,外部是可以访问的。.m文件是对.h文件中方法是实现,对外部是不可见的。.h:头文件。头文件包含类,类型,函数和常数的声明。.m:源代码文件。这是典型的源代码文件扩展名,可以包含Objective-C和C代码。.mm:源代码文件。带有这种扩展名的源代码文件,除了可以包含Objective-C和C代码以外还可以包含C++代码。仅在你的Objecti
Jalon
·
2020-03-06 09:02
(
iOS笔记
)iOS上实现空心字体的两种方式
1、使用NSAttributedStringNSAttributedString*aStr=[[NSAttributedStringalloc]initWithString:@"邪魔退散"attributes:@{NSStrokeWidthAttributeName:@2,NSStrokeColorAttributeName:[UIColororangeColor]}];self.demoLabe
程序猿孙哥哥
·
2020-03-03 08:44
iOS笔记
-预览和分享文件到其他应用
我们这里说的是利用UIDocumentInteractionController进行文件的预览和分享注:file_urlshi是文件的存储路径,因为应用沙盒路径会变,所以建议获取的时候不要使用绝对路径-(void)openFileViewController:(NSString*)file_url{NSURL*file_URL=[NSURLfileURLWithPath:file_url];if(
keelZJP
·
2020-03-03 07:11
iOS笔记
:strong、weak等详解
在iOS开发过程中,属性的定义往往与retain,assign,copy有关,这里先简单介绍下这几个的区别NSString*pt=[[NSStringalloc]initWithString:@"abc"];上面一段代码会执行以下两个动作1在堆上分配一段内存用来存储@"abc"比如:内存地址为:0X1111内容为"abc"2在栈上分配一段内存用来存储pt比如:地址为:0Xaaaa内容自然为0X11
心情的颜色
·
2020-03-01 22:18
iOS笔记
之UILabel(富文本)
1、常见的属性及说明NSFontAttributeName//字体NSParagraphStyleAttributeName//段落格式NSForegroundColorAttributeName//字体颜色NSBackgroundColorAttributeName//背景颜色NSStrikethroughStyleAttributeName//删除线格式NSUnderlineStyleAttr
SuAdrenine
·
2020-02-29 02:13
iOS笔记
多用类型变量,少用#define预处理指令若不算公开某个常量,则应该定义在该常量的实现文件里:staticconstNSTimeIntervalkAnimationDuration=0.3;static和const定义的值,如果遭到修改,编译器会报错如果要对外公开,例如创建一个通知,可以这样定义:.h:externNSString*constMRHStringConstant;.m:NSStrin
程序马
·
2020-02-27 19:07
iOS笔记
之创建视图调用方法的顺序
一个视图控制器被创建,并在屏幕上显示的时候。代码的执行顺序1、alloc创建对象,分配空间2、init初始化对象,初始化数据3、loadView加载视图4、viewDidLoad载入完成5、viewWillAppear视图将出现在屏幕6、viewDidAppear视图已在屏幕上渲染完成当一个视图被移除屏幕并且销毁的时候的执行顺序,1、viewWillDisappear视图将被从屏幕上移除之2、vi
SuAdrenine
·
2020-02-26 23:25
iOS笔记
之_单例
iOS单例dispatch_once函数voiddispatch_once(dispatch_once_t*predicate,dispatch_block_tblock);dispatch_once函数中有两个参数,对于给定的一个predicate,该函数会保证第二个参数block一定会执行,并且只执行一次。因为传入的block只执行一次,所以predicate必须是相同的,一般情况下predi
sunny_轻芒
·
2020-02-26 15:14
iOS笔记
- NSRunLoop
概述我们的应用不能对NSRunLoop对象进行创建和直接的管理操作。每一个NSThread对象(包括mainthread)都按需自动创建一个NSRunLoop对像(这里的意思是:线程刚创建时并没有RunLoop,如果你不主动获取,那它一直都不会有)。通过currentRunLoop()方法可以访问当前线程的runloop。NSRunLoop和CFRunLoopRefNSRunLoop是基于CFRu
Ajcc
·
2020-02-25 02:18
iOS笔记
--RunLoop相关知识
RunLoop相关知识1.深入理解RunLoop深入理解RunLoop2.iOS事件处理机制与图像渲染过程iOS事件处理机制与图像渲染过程3.iOS---RunLoop深度剖析iOS---RunLoop深度剖析4.iOS-RunLoop深入理解iOS-RunLoop深入理解iOS刨根问底-深入理解RunLoophttps://www.cnblogs.com/kenshincui/p/6823841
周末年安
·
2020-02-24 18:31
[
iOS笔记
]Swift中的闭包(Closures)
闭包是自包含的函数代码块,Swift中的闭包与C和Objective-C中的代码块(blocks)以及其他一些编程语言中的匿名函数比较相似。闭包表达式语法的如下一般形式:{(parameters)->returnTypeinstatements}举个例子:funcbackwards(s1:String,s2:String)->Bool{returns1>s2}varreversed=names.s
afluy
·
2020-02-22 06:54
iOS笔记
--面试题06
导航控制器原理segue底层原理VC调转方式面试:对应的数据存储(NSBundlemainBundle区别必需运行文件)面试:NSUserDefaults怎么存储,就是plist文件面试:viewWillLayoutSubviews,先布局自己的View,再布局里面子控件,在屏幕打横会调用(至少调用2次)面试:当调用dismis,和系统底层发通知,发现有没modal控制器,有就销毁,没就找普通VC
提莫不胖
·
2020-02-21 16:49
iOS笔记
之设置UITableViewCell的间距
默认Cell之间是没有间距的,但是因为实际需要我们要让Cell之间有一定的间距,这里有三种方式能实现这种效果:(1)如果是UITableViewStylePlain,你可以将UITableViewCell的separator设置为UITableViewCellSeparatorStyleNone。将tableViewCell的背景色,contentView的背景色设置为透明,在contentVie
SuAdrenine
·
2020-02-20 08:08
iOS笔记
之UITableView自动计算cell高度
方法一:使用系统自动计算cell高度-(CGFloat)tableView:(UITableView*)tableViewheightForRowAtIndexPath:(NSIndexPath*)indexPath{UITableViewCell*cell=[selftableView:tableViewcellForRowAtIndexPath:indexPath];return[cell.c
SuAdrenine
·
2020-02-19 22:31
iOS笔记
-一些零散的知识点
info.plist文件1.Bundlename:app名称,项目通常使用英文,app名称显示中文2.Bundleidentifier:app标识符上传AppStore和推送3.Bundleversionsstring,shortapp版本号PCH文件pch作用:1.存放一些公用的宏2.存放一些公用的头文件3.自定义Log//程序在调试阶段的时候才需要打印//...表示宏里面的可变参数//__VA
Developer_Yancy
·
2020-02-18 00:28
iOS笔记
| Pointer is missing a nullability type specifier
请点击此处输入图片描述前言最近封装AFN的时候发现在.h文件中总是出现这种警告:请点击此处输入图片描述这个东西虽然不影响编译和运行,但看起来总让人不舒服。为什么会出现这种警告?我们都知道在swift中,可以使用!和?来表示一个对象是optional的还是non-optional,如view?和view!。而在Objective-C中则没有这一区分,view既可表示这个对象是optional,也可表
软件iOS开发
·
2020-02-17 19:10
iOS笔记
,字符串里面带操作字符的处理
好了,开始装B了。也算纪录下自己做开发的一些小知识。前些时间开发一个发表朋友圈的app,因为用户不知道填了什么字符,最后json数据直接都解析不了。这段字符串奇怪的地方在于你看不见那个字符,其实是0-32为的操作字符,任何的文本编辑都不会显示的,有些文本会显示点号。最后我就想办法把点号去掉了。直接上代码//删除JSON字符串里面的ASCII码控制符号,导致JSON不能正常解析-(NSString*
Baker_cheng
·
2020-02-14 08:06
代码中更改Icon图标、制作库 、 记录崩溃日志 、 唯一标识---
iOS笔记
摘录
目录1、代码中更改Icon图标1.代码中更改Icon图标(更换图标,会弹出确认框,仅支持13及以上系统)第1步.修改Info.plistCFBundleIconsCFBundlePrimaryIconCFBundleIconFiles原AppIcon图标名CFBundleAlternateIconsicon01CFBundleIconFilesAppIcon图标名2icon02CFBundleIc
风雨路上砥砺前行
·
2020-02-13 12:00
iOS笔记
--简单的格式使用
1.常用的代理方法套路@classUserModel;@protocolUserOperationDelegate//所有的点击都绑在这个代理方法-(void)IconImageViewTapped:(int)userId;-(void)LikeButtonClicked:(UIButton*)button;@end@interfaceUserOperationView:UIView@proper
糖纸疯了
·
2020-02-12 22:00
[
iOS笔记
]GCD介绍和基本使用
GCD是什么全称是GrandCentralDispatch是纯C语言,提供了非常多强大的函数是libdispatch的市场名称,而libdispatch作为Apple的一个库,为并发代码在多核硬件(跑iOS或OSX)上执行提供有力支持这部分代码苹果已开源GCD的优势自动利用更多的CPU内核自动管理线程的生命周期(创建线程、调度任务、销毁线程)能通过推迟昂贵计算任务并在后台运行它们来改善你的应用的响
Seacen_Liu
·
2020-02-10 05:05
iOS笔记
:深入理解 iOS 开发中的锁
本文转载自:深入理解iOS开发中的锁作者博客:bestswifter摘要本文的目的不是介绍iOS中各种锁如何使用,一方面笔者没有大量的实战经验,另一方面这样的文章相当多,比如iOS中保证线程安全的几种方式与性能对比、iOS常见知识点(三):Lock。本文也不会详细介绍锁的具体实现原理,这会涉及到太多相关知识,笔者不敢误人子弟。本文要做的就是简单的分析iOS开发中常见的几种锁如何实现,以及优缺点是什
Harveyhhw
·
2020-02-07 14:38
iOS笔记
--Day01课堂笔记
显示隐藏文件:defaultswritecom.apple.finderAppleShowAllFilesYES隐藏隐藏文件:defaultswritecom.apple.finderAppleShowAllFiles–boolfalse(输入指令后,一定要重新启动Finder)关于OC考试:35分钟机试加上30分钟笔试(笔试包含2道C变成一道OC变成一道OC简答)培养面向对象的思想:必须敲当天的
提莫不胖
·
2020-01-08 19:25
iOS笔记
- WKWebView 基本使用
WKWebView基础使用封装WebViewController基类包含WebView的本地HTML、远程URL的加载;JS调用OC并传递参数以及OC调用JS并传递参数。具体实现webView初始化//网页配置WKWebViewConfiguration*config=[[WKWebViewConfigurationalloc]init];//初始化网页视图self.webView=[[WKWeb
Jaesun
·
2020-01-04 14:11
iOS笔记
:应用的生命周期
进入一个iOS程序时,先看main.m里面的UIApplicationMain,若主类名为nil,则默认为UIApplication(这个类除了管理整个程序的生命周期之外什么都不做,它只赋值监听事件然后交给delegateClass去做。),delegateClassName即委托类名(在工程新建时实例化一个对象)一般实例化为AppDelegate。这时候,进入AppDelegate类里面,该类遵
liailing
·
2020-01-03 20:29
iOS笔记
-多线程
进程:正在进行的程序,我们就叫它进程.线程:线程就是进程中的一个独立的执行路径.一个程序它是按顺序从上往下执行的,这个执行顺序我们可以把它看成是一条线,把这条线就叫做线程;每一个程序中至少包含一条线程,这条线程,我们叫它主线程.多线程:多线程也就是说一个程序中有多条执行路径.在iOS当中将一些比较耗时的操作放到另一条执行路径里.让它与主线程同时运行.这样不会造成主线程的堵塞.多线程的原理:同一时间
夕颜明媚
·
2020-01-01 09:19
iOS笔记
--本地文件的保存,读取,删除操作
在iOS中本地文件以下应该就是常用的Documents:用于存储用户数据或其它应该定期备份的信息。(在我的项目中,我用来存放下载到本地的音视频数据。)Library目录:这个目录下有两个子目录:Caches和PreferencesPreferences目录:包含应用程序的偏好设置文件。您不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好.Caches目
蚂蚱Damon
·
2019-12-30 06:35
iOS笔记
篇-熟悉OC<三>
前言首先回顾下前面两篇文章的内容。熟悉OC中提到,在OC语言的起源,OC语言为C语言的超集,所以可以容纳所有的C语言的语法。以及OC语言所采用的消息结构。从语言特性上来说对于引入头文件可以使用向前声明,少用#define以及多用枚举等内容。熟悉OC围绕着对象、消息还有运行期详细阐述了类和对象的本质,消息分发系统的工作过程,以及OC作为动态绑定的语言,具备的语言特点。接下来文章将从OC语言的重点语法
破晓霜林
·
2019-12-30 06:13
iOS笔记
之UICollectionView
UICollectionView是比UITableView更加复杂的UI控件,通过它可以实现许多复杂的流布局,但对我们来说,系统提供的接口十分简单易用,并且有十分强的制定性。简介UICollectionView是iOS6之后引入的一个新的UI控件,它和UITableView有着诸多的相似之处,其中许多代理方法都十分类似。简单来说,UICollectionView是比UITbleView更加强大的一
SuAdrenine
·
2019-12-28 23:29
iOS笔记
-- viewController生命周期
一、ViewController的生命周期(如图1)会经历初始化、加载视图、销毁视图、生命结束等过程,详细过程如下:图11.init初始化ViewController2.loadView当view需要被展示而它却是nil时,viewController会调用该方法。如果代码维护View的话需要重写此方法,使用xib维护View的话不用重写。3.viewDidLoad执行完loadView后继续执行
thls
·
2019-12-28 21:33
iOS笔记
-定位(LBS)小结
iOS8.0之前的定位前台定位导入CoreLocation框架和对应的主头文件#import创建CLLcationManager对象,并设置代理_locationM=[[CLLocationManageralloc]init];_locationM.delegate=self;调用CLLcationManager对象的startUpdatingLocation方法进行更新用户位置[_locatio
Developer_Yancy
·
2019-12-28 19:06
iOS笔记
之Label不能完全显示时的省略方式
lineBreakMode:设置标签文字过长时的显示方式。label.lineBreakMode=NSLineBreakByCharWrapping;//以字符为显示单位显示,后面部分省略不显示。label.lineBreakMode=NSLineBreakByClipping;//剪切与文本宽度相同的内容长度,后半部分被删除。label.lineBreakMode=NSLineBreakByTr
SuAdrenine
·
2019-12-27 03:50
iOS笔记
-多线程之GCD
线程任务同步:在同一个线程中执行任务,任务没有完成前不返回,会阻塞当前线程;dispatch_sync-GCD中在当前线程中添加一个同步操作异步:另外开辟线程执行任务,不影响原来线程中的任务执行;dispatch_async-CGD中另开辟线程中添加一个异步操作GCD线程队列主队列:主线程所在的队列,获取主队列dispatch_get_main_queue()//如:向主队列中添加异步线程更新UI
Jaesun
·
2019-12-26 12:00
iOS笔记
-导航控制器(Nav)的10条经验
1.导航控制器永远显示的是栈顶控制器的view2.导航控制器中做界面之间的跳转必须取到导航控制器3.调用pop方法并不会马上销毁当前控制器4.popToViewController使用注意点:传入进去的控制器必须是导航控制器栈里面的控制器5.导航条的内容由栈顶控制器决定,一个导航控制器只有一个导航条,因此只能由一个控制器决定,谁先显示在最外面,谁就是栈顶控制器.6.在iOS7之后,默认会把导航条上
Developer_Yancy
·
2019-12-25 04:10
iOS笔记
之实现新闻类客户端顶部的滚动效果
1.写在前面:前段时间项目用到了类似新闻类客户端顶部的滚动条,虽然网上也有很多,但是本着锻炼自己的想法,自己动手写了一个,所幸效果不差,遂分享出来,一方面给大家参考,一方面也给自己记录。上效果图:效果2.使用方法:方法1:NSArray*titleArray=@[@"推荐",@"热点",@"视频",@"体育",@"搞笑"];NSMutableArray*vcArray=@[].mutableCop
SuAdrenine
·
2019-12-24 19:48
iOS文件分享
秒懂iOS文件分享https://blog.csdn.net/u013538542/article/details/70473728
iOS笔记
-预览和分享文件到其他应用https://www.jianshu.com
一点春
·
2019-12-22 16:12
iOS笔记
之消息-Category-Protocol
—消息—消息传递模型(MessagePassing)是Objective-C语言的核心机制。在Objective-C中,没有方法调用这种说法,只有消息传递。在C++或Java中调用某个类的方法,在Objective-C中是给该类发送一个消息。在C++或Java里,类与类的行为方法之间的关系非常紧密,一个方法必定属于一个类,且于编译时就已经绑定在一起,所以你不可能调用一个类里没有的方法。而在Obje
SuAdrenine
·
2019-12-22 08:59
iOS笔记
- 字符串处理
Unicode计算机没法直接处理文本,他只和数字打交道。为了计算机里显示文字,我们指定了一个从数字到字符的映射,这个映射就叫做编码。最有名的字符串编码是ASCII(/ˈæski/ASS-kee)字符串排序NSNumberSearch:对字符串数字排序,“Section10”<“Section100”<“Section1000”NSDiacriticInsensitiveSearch:“A”等同于“
Ajcc
·
2019-12-22 06:15
iOS笔记
之Block
一:Block是什么?block是基于C语言的扩展功能。block有一个比较常见的说法,叫做:带有自动变量的匿名函数,首先匿名函数,即为没有名字的函数,我们尝试用函数指针来实现一下:intfunction(inta){print(a);}int(*functionPointer)(int)=&function;intresult=(*function)(19);注意看最后一行,我们通过函数指针去调
SuAdrenine
·
2019-12-21 04:10
iOS笔记
NSString*contentStr=[NSStringstringWithFormat:@"%@",DetailStr];1.移除所有子视图的系统方法[webViewloadHTMLString:contentStrbaseURL:nil];NSString*contentStr=[NSStringstringWithFormat:@"%@",DetailStr];[webViewloadHT
joyfulsad
·
2019-12-20 21:01
iOS笔记
之数据存储
一、沙箱SandBox和Bundle的概念个人觉得要弄懂数据存储首先应该明确沙箱SandBox和Bundle的概念。沙箱本意本来就是为了说明程序资源和外界的隔离性。强调隔离!IOS中就是为了说明各个应用程序之间的关系是孤立的,IOS应用程序只能在本应用程序中创建的文件系统中读取文件,不可以去其它地方访问,此区域称为沙盒,所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等
尽欢呀尽欢
·
2019-12-18 04:46
UIPageViewController---
iOS笔记
摘录
创建UIPageViewController//创建UIPageViewController,style:滚动(默认),方向:横向(默认)//style(2种):pageCurl翻书,scroll滚动//orientation(2种):横向,纵向//options(2种)://UIPageViewControllerOptionSpineLocationKey(仅在style为翻书时有效):书脊位
风雨路上砥砺前行
·
2019-12-16 03:47
[
iOS笔记
]Swift中的可选链式调用的注意点
通过可选链式调用访问属性下面代码中的赋值过程是可选链式调用的一部分,这意味着可选链式调用失败时,等号右侧的代码不会被执行.john.residence?.address=createAddress()注意:以后如果遇到等式右边的方法一直未执行时,可以检查等式左侧变量是否有效通过可选链式调用调用方法如果通过可选链式调用来调用无返回值的方法,该方法的返回类型会是Void?,而不是Void,因为通过可选
afluy
·
2019-12-16 01:49
链式编程 函数编程---
iOS笔记
摘录
链式编程增强可读性(通过.将所有操作通过一行代码搞定)UILabel其他控件(见工具库)UILabel使用UILabel*nameL=YLable.yfont(UIFont(20)).ytextColor(RGBOF(0xffffff)).InView(headView);UILabel+LinkBlock.h#import#defineYTLable[UILabelnew]@interfaceU
风雨路上砥砺前行
·
2019-12-15 03:09
iOS笔记
1.@dynamic关键字是用来明确告诉编译器禁止自动合成属性变量的存取方法和加下划线的默认变量名。默认情况如果不用@dynamic关键字,那么编译器会自动合成那些没有定义的存取方法,而那些程序员已经定义的存取方法不会再去合成,即程序员定义的存取方法优先级高。例如,如果此时程序员自定义了setter方法,那么编译器只会自动合成getter方法,而不会再去合成已经定义的setter方法。2.多态(p
astring
·
2019-12-11 21:31
PCH---
iOS笔记
摘录
目录1、PCH1、PCH用于存放常用的宏定义头文件常量使用const而不是宏:1.宏过多会影响开发效率(宏是在预编译阶段处理的),const是在编译阶段处理的且只会被编译一次。2.宏只是简单的替换,不会检查错误,而const会检查错误。配置新建pch文件.png配置路径---可以拖拽文件直接生成路径.png常用#pragmamake调试、线上#ifdefDEBUG//高效打印(release模式下
风雨路上砥砺前行
·
2019-11-05 23:15
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他