4 Holly_iOS

尚未进行身份认证

码农

等级
TA的排名 14w+

h5中的图片点击放大

在wkwebview的代理方法//MARK:--加载完成-(void)webView:(WKWebView*)webViewdidFinishNavigation:(WKNavigation*)navigation中加入js代码//js方法遍历图片添加点击事件返回图片个数   逻辑:   1.遍历获取全部的图片;(只获取detail-maindiv

2018-01-17 10:24:32

CoreData(六)模型版本和数据迁移

前面几篇文章中讲的所有内容,都是在同一个模型版本上进行操作的。但在真实开发中,基本上不会一直停留在一个版本上,因为需求是不断变化的,说不定什么时候就需要往模型里添加新的字段,添加新的模型,甚至是大规模的重构;所以数据的迁移就显得尤为重要了。CoreData中,数据迁移本质就是把旧的SQLite数据库里的内容,复制到新的SQLite数据库里去,让新的数据库作为默认的数据存储。伴随着模型

2017-12-28 10:48:07

CoreData(五)CoreData 和 TableView 结合

我们知道CoreData里存储的是具有相同结构的一系列数据的集合,TableView正好是用列表来展示一系列具有相同结构的数据集合的。所以,要是CoreData和TableView能结合起来,CoreData查询出来的数据能同步地显示在TableView上,更好一点就是CoreData里的改动也能同步到TableView上,那就再好不过了。可喜的是,确实有这样一个AP

2017-12-28 10:43:48

CoreData(四)并发操作

通常情况下,CoreData的增删改查操作都在主线程上执行,那么对数据库的操作就会影响到UI操作,这在操作的数据量比较小的时候,执行的速度很快,我们也不会察觉到对UI的影响,但是当数据量特别大的时候,再把CoreData的操作放到主线程中就会影响到UI的流畅性。自然而然地我们就会想到使用后台线程来处理大量的数据操作。使用后台managedObjectContextCoreD

2017-12-28 10:41:37

CoreData(三)关联表的创建

上篇博客中讲了CoreData里增删改查的使用,学到这里已经可以应对简单的数据存储需求了。但是当数据模型复杂起来时,例如你的模型类中除了要存储CoreData里支持的数据类型外,还有一些自定义的数据类型,这个时候只靠单一的模型结构就没办法来满足这种需求了,于是我们就需要使用关联表结构,也就是我们这次要讲的内容。简介多表关联,相信接触过SQL数据库的朋友都不陌生,就是指可以在一张表的

2017-12-28 10:29:05

CoreData(二) 数据的增删改查

在上篇博客中,讲了数据模型和CoreData栈的创建,那下一步就是对数据的操作了。和数据库一样,CoreData里的操作也无非是增删改查。下面我们将逐步讲解在CoreData中进行增删改查的方式。基本的增删改查插入条目先来看一下插入条目的方式,在插入之前,我们需要先创建要插入的数据,使用NSEntityDesctiption类的+(__kindofNSManagedOb

2017-12-28 10:19:17

CoreData(一)数据模型 + CoreData 栈的创建

CoreData是Cocoa平台上用来管理模型层数据和数据持久化的一个框架,说简单点,就是一个数据库存储框架。CoreData里相关的概念比较多,而且初始化也非常繁琐,所以对初学者的学习还是有一些困难的。这篇文章将从头到尾详细地讲一遍CoreData的使用方法,从CoreData的初始化到简单的增删改查,再到批量处理,数据模型的版本更新以及和TableView的结合等,真正让你

2017-12-28 10:02:47

iOS 可以看见下一页的部分内容的ScrollView

需要使scrollView的宽度小于实际显示宽度    _dataScrollView.pagingEnabled=YES;//分页滑动宽度系统默认为 UIScrollView 的 width    _dataScrollView.delegate=self;    _dataScrollView.showsHorizontalSc

2017-12-26 10:30:07

iOS 高德地图路线规划

最近做了高德地图路线规划,把自己不熟的点记录一下:1、地图不显示当前位置精准圈:设置mapview的 customizeUserLocationAccuracyCircleRepresentation属性为yes,就会调用mapview的代理方法-(MAOverlayRenderer *)mapView:(MAMapView *)mapViewrendererForOverl

2017-12-26 10:21:20

瓦片地图在iOS项目中的应用

瓦片地图简单点来讲,我们可以把一张地图看成有很多张正方形图片组成的,就像瓦片一样排放,但是这个排放是有一定的规律的.当然地图的缩放等级决定了图片的数量.举个

2017-12-19 09:47:15

iOS 多线程

为什么使用多线程:网络请求:异步请求,不占主线程图片加载文件处理数据存储任务执行多线程原理:单核操作系统:操作系统会为每个线程分配时间段,交替进行宏观并行,微观串行多核:并行优缺点:优:1、简化编程模型(设计复杂的系统设计中,单一线程处理大的,零散的任务困难,多线程就可以简化编程模型)2、更加轻量级3、提高执行效率4、提高资源利用率缺:1、增加程序的设计复杂度(资源共享、线程读写数据库操作...

2017-12-07 10:47:44

Instruments 调试工具的使用

Instrumets做程序性能调试 http://www.samirchen.com/use-instruments/其中文章中的一些按钮位置在Xcode9.1中有所改变,如下图

2017-12-06 10:15:41

iOS dispatch_source_t

DispatchSource是GCD中的一个基本类型,从字面意思可称为调度源,它的作用是当有一些特定的较底层的系统事件发生时,调度源会捕捉到这些事件,然后可以做其他的逻辑处理,调度源有多种类型,分别监听对应类型的系统事件。我们来看看它都有哪些类型:TimerDispatchSource:定时调度源。SignalDispatchSource:监听UNIX信号调度源,比如监听代表挂起

2017-12-04 17:04:10

iOS 定时器

1、NSTimer使用注意1)与RunLoop的关系 2)释放不掉的问题http://blog.csdn.net/Christ_Beings/article/details/53425665https://www.mgenware.com/blog/?p=459 ***http://www.cocoachina.com/ios/20150710/12444.html

2017-12-04 16:25:06

iOS 关于信号量的文章

iOS信号量http://www.itwendao.com/article/detail/393099.htmlhttp://www.cnblogs.com/yajunLi/p/6274282.htmliOS之利用GCD信号量控制并发网络请求:http://blog.csdn.net/Cloudox_/article/details/71107179

2017-12-01 17:39:55

iOS 获取view上某一点的色值

//// UIView+ColorView.m// CAEmitterCell//// CreatedbyHollyon2017/11/30.// Copyright©2017年Holly.Allrightsreserved.//#import"UIView+ColorView.h"#import@implemen

2017-12-01 17:32:27

iOS 线程锁

一、使用关键字1)@synchronized(互斥锁)优点:使用@synchronized关键字可以很方便地创建锁对象,而且不用显式的创建锁对象。缺点:会隐式添加一个异常处理来保护代码,该异常处理会在异常抛出的时候自动释放互斥锁。而这种隐式的异常处理会带来系统的额外开销,为优化资源,你可以使用锁对象。二、“Object-C”语言   1)NSLock(互斥锁)2)N

2017-12-01 17:24:52

IOS 截图

-(void)fullScreenshots{UIWindow*screenWindow=[[UIApplicationsharedApplication]keyWindow];    UIGraphicsBeginImageContext(screenWindow.frame.size);//全屏截图,包括window    [screenWindow.laye

2017-11-30 16:29:49

iOS 粒子效果

一、在 UIKit 中,粒子系统由两部分组成:1·      一个或多个  CAEmitterCells :发射器电池可以看作是单个粒子的原型(例如,一个单一的粉扑在一团烟雾)。当散发出一个粒子,UIKit根据这个发射粒子和定义的基础上创建一个随机粒子。此原型包括一些属性来控制粒子的图片,颜色,方向,运动,缩放比例和生命周期。 2·      一个或多个  CAEmitterLay

2017-11-30 10:41:58

CADisplayLink 的使用

CADisplayLink是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。我们在应用中创建一个新的CADisplayLink对象,把它添加到一个runloop中,并给它提供一个target和selector在屏幕刷新的时候调用。CADisplayLink和其它CoreAnimation类一样,都是在QuartzCore.framework里。使用方式-

2017-11-29 15:00:16

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!