设计模式是什么? 你知道哪些设计模式,并简要叙述? 设计模式是一种编码经验,就是用比较成熟的逻辑去处理某一种类型的事情。 1). MVC模式:Model View Control,把模型 视图 控制器 层进行解耦合编写。 2). MVVM模式:Model View ViewModel 把模型 视图
最近在做项目的时候遇到一个挺坑的崩溃问题,是由于NSDictionary初始化时nil指针引起的崩溃。假设我们现在要初始化一个{key1 : value1, key2 : value2, key3 : value3}的NSDictionary,一般有两种初始化方法: 1、使用标准的初始化方法:
一、什么是NSOperation?       NSOperation是苹果提供的一套多线程解决方案。实际上NSOperation是基于GCD更高一层的封装,但是比GCD更加的面向对象、代码可读性更高、可控性更强,很屌的是加入了操作依赖。       默认情况下,NSOperation单独使用时只能
如果深入学习ios Runtime,不得不提到消息转发,很多框架的实现都基于这一功能实现(例如JSPatch) 虽然看了很多篇关于消息转发的文章,但是理解的不是很透彻,还是自己实践一些理解能更加透彻一下。 首先我自己定义了一个MyString继承NSString @interface MyStri
  项目经过一个月的加班加点,终于这一期算是差不多了,于是便开始了优化工作,今天就发现了一个问题,在iOS10.2系统一下的手机调用系统的拨打电话功能,弹框是不出现的,直接跳转到拨打电话的界面,但是在iOS10.2及其以上的系统是会出现的,这里项目的代码是一样的,相信开发者都认识,如下 最后查阅资
1 // NSFontAttributeName 设置字体属性,默认值:字体:Helvetica(Neue) 字号:12 2 // NSForegroundColorAttributeNam 设置字体颜色,取值为 UIColor对象,默认值为黑色
1.应用 Assets.xcassets :用来存放图像资源文件   给项目添加 AppIcon 时图标要用 png 格式的,不要用其他格式。当是其它图片格式时 ,不要仅仅修改其后缀名,若仅仅修改后缀名,再添加 AppIcon 后会报错的。要借助 预览App的文件下“导出”转为其他格式   好处:
在了解Masonry框架之前,有必要先了解一下自动布局的概念。在iOS6之前,UI布局的方式是通过frame属性和Autoresizing来完成的,而在iOS6之后,苹果公司推出了AutoLayout的布局方式,它是一种基于约束性的、描述性的布局系统,尤其是苹果的手机屏幕尺寸变多之后,AutoLay
说明: ^.*[u4e00-u9fa5].*$ 是否包含中文^[u4E00-u9FA5]+$ 是否全中文   - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replac
数据库sqlite在iOS中起着举足轻重的作用,本文主要讲述一下sqlite的并发,事务和常见的损坏问题,后面会简述一下对sqlite进一步封装的第三方库FMDB。 sqlite的并发和事务 在了解sqlite的事务和并发之前,我们要先了解sqlite提供的几种锁的类型及区别。s
今天封装了一个动画,想着以后可能会用,就封装了一下。欢迎下载 https://github.com/USimpleLife/SPCircleView 参数说明 @param centerPoint 中心点 @param radiusMax 半径 @param radiusMin 周围按钮半径 @pa
目录   1、UIView Animation     1-1、UIView Animation(基本使用)     1-2、UIView Animation(转场动画)   2、CATransaction(Layer版的UIView Animation)   3、CAAnimation     3
假如B类继承A类,数据中有B类,把B类转Data后存入,再取出。由于Model声明的类型是A,那转出来的也是A类型,这样数据就丢失了一部分。 或者存入的是范型集合数据,存入再取出也会发生类型擦除。 原因在于对类对象进行序列化和反序列化时,很多第三方库只是单纯以Model声明的类型为准,没有处理类型擦
一、前言 在开发过程中,Android可能会打出来很多的包,用于标识不同的商店下载量。原来觉得苹果只有一个商店:AppStore,如何做出不同来源的统计呢?本篇文章就是告诉大家如何做不同渠道来源统计。 二、正文 先看一下苹果自家统计到的数据:   这个是在没有对下载链接做任何处理的情况下在itun
期初第一次做蓝牙开锁的时候遇到的最尖锐的问题就是ios设备如何对获取的广播信息进行读取,大概用了4中方式,都无法解决,最后不得不求助官方人员。给了一个方法,大家可以参考。在此附图: 由于mac地址是65::43:53这种形式,所以截取方式就如上
代码很简单,一看便知。这里为顺时针,若想要逆时针,clockwise改为0,还需更改起始角度和终点角度。 源码地址:https://github.com/LfyDragon/CountDown   直接上代码:- (void)drawRect:(CGRect)rect { CAS
  打开Android开发工具Android Studio,选择菜单 Open an existing AndroidStudio project,打开ch04项目的android文件夹,如图5.8所示。       图5.8  Android原生项目结构     从Android的项目结构,想必读

推荐文章