自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (4)
  • 收藏
  • 关注

原创 iOS学习之 YYWebImage 替代 SDWebImage

YYWebImage 是一个异步图片加载框架 (YYKit 组件之一).源码地址:点击打开链接其设计目的是试图替代 SDWebImage、PINRemoteImage、FLAnimatedImage 等开源框架,它支持这些开源框架的大部分功能,同时增加了大量新特性、并且有不小的性能提升。它底层用 YYCache 实现了内存和磁盘缓存, 用 YYImage 实现了 WebP/

2016-04-29 17:46:25 13159 2

转载 iOS开发之高效绘图,通过一个绘图应用进行讲解

软件绘图术语绘图通常在Core Animation的上下文中指代软件绘图(意即:不由GPU协助的绘图)。在iOS中,软件绘图通常是由Core Graphics框架完成来完成。但是,在一些必要的情况下,相比Core Animation和OpenGL,Core Graphics要慢了不少。软件绘图不仅效率低,还会消耗可观的内存。CALayer只需要一些与自己相关的内存:只有它的寄宿图会

2016-04-28 14:05:12 8753 2

转载 产品经理之流失率+留存率≠100% ,MAU DAU

产品经理之流失率+留存率≠100% ,MAU DAU  我蛮赞同这种说法的,所以转载过来,方便以后查阅。这篇东西想写有很久了,但是迟迟未能动笔,今日去参加TalkingData的沙龙颇有感触。个人觉得那本“白皮书”是很有里程碑意义的东西,它是中国游戏数据界第一本公开界定基本统计量的文本(如果之前有,TalkingData不知道,那我也就更不知道了)。但同时,对个别统计量(留

2016-04-26 09:50:05 7103 1

转载 iOS 开发之 KVC - setValuesForKeysWithDictionary 解析神器

从字典映射到一个对象,这是KVC中的一个方法所提供的,这个方法就是 setValuesForKeysWithDictionary: ,非常好用,不需要你来一一的给对象赋值而直接从字典初始化即可,但用的不好会经常崩溃,本教程就来讨论这些使用的细节.首先,先初始化一个字典,如下所示:----------------------------------------------------

2016-04-25 18:36:45 3569 2

转载 iOS开发之微信自动抢红包功能

最近在学习 iOS 逆向开发的时候,为了练手,开发了一个 iOS 版的微信抢红包 tweak,并且已经发布到了 Github 上面。微信抢红包 Tweak 的 Github 地址   点击打开链接但是,很多小伙伴表示不会安装,特此写了这篇iOS tweak 安装教程。说明:本篇文章只是为了说明如何在 iOS 当中安装 tweak,并不会涉及完整的逆向环境的搭建,也不会涉

2016-04-23 09:45:46 7664 1

转载 iOS开发之GCD -- dispatch_group

组   dispatch_group很多时候,你发现需要将异步的 block 组合起来去完成一个给定的任务。这些任务中甚至有些是并行的。现在,如果你想要在这些任务都执行完成后运行一些代码,"groups" 可以完成这项任务。看这里的例子:dispatch_group_t group = dispatch_group_create();dispatch_queue_t queue

2016-04-22 22:42:33 720

转载 GCD 之 dispatch_benchmark 测量指定代码块执行时间

基准测试在 GCD 的一个不起眼的角落,你会发现一个适合优化代码的灵巧小工具:uint64_t dispatch_benchmark(size_t count, void (^block)(void));把这个声明放到你的代码中,你就能够测量给定的代码执行的平均的纳秒数。例子如下:size_t const objectCount = 1000;uint64_t n =

2016-04-22 22:28:04 1412

转载 iOS之一个超赞的视频直播、第三方库,直播看这个就够了,支持RTMP推流,美颜直播

GitHub地址: 点击打开链接包含一下功能:1, 提供IOS苹果手机的RTMP推流;填写RTMP服务地址,直接就可以进行推流。2,美颜直播美不美都能装的直播,IOS OPENGL美艳加速,手机完全不发烫。3,前后摄像头随时切换4,提供RTMP连接状态的回调一,首先简单扫盲当前直播都是用RTMP协议,推流到RTMP服务

2016-04-22 17:00:14 12466 1

原创 Android 开发之RecyclerView 实现ListView (一)

1. 今天所介绍的就是通过 Android studio建立工程,然后通过RecycleView 实现ListView。 当然最终的目的是让大家更加认识到RecycleView.废话不多说,先看最终效果图:我们可以通过上图看出:      我们主要实现的功能 :            1. ListView 效果的实现            2. 分割线的自

2016-04-22 16:53:31 3424

转载 iOS之statusBar相关设置(UIStatusBar) 你看这里就足够了

IOS上 关于状态栏的相关设置(UIStatusBar)知识普及ios上状态栏 就是指的最上面的20像素高的部分 状态栏分前后两部分,要分清这两个概念,后面会用到:前景部分:就是指的显示电池、时间等部分;背景部分:就是显示黑色或者图片的背景部分;如下图:前景部分为白色,背景部分为黑色 注意:这里只涉及到ios7以及更高版本

2016-04-22 14:35:16 4157

转载 IOS开发之深入坐标系frame、bounds、center、 transform的不同与联系

1.1 frame属性a。什么是frame类型:CGRect结构体(size origin)作用:该视图左顶点在父视图的坐标系下的位置,以及该视图在父视图中占据的宽和高b。直接修改了frame,其他属性如何变化?bounds: 会center: 会transform: 不会c。什么时候使用frame当把一个视图添加

2016-04-22 11:16:24 1900

转载 在iOS应用中从竖屏模式强制转换为横屏模式

在 iPhone 应用里,有时我们想强行把显示模式从纵屏改为横屏(反之亦然),有两种思路:第一种:通过人为的办法改变view.transform的属性。 具体办法: view.transform一般是View的旋转,拉伸移动等属性,类似view.layer.transform,区别在于View.transform是二维的,也就是使用仿射的办法通常就是带有前缀

2016-04-22 11:02:44 2757 1

转载 实现TableView的上拉加载和下拉刷新

项目开发过程中经常会用到tableview来加载网络数据,而经常要用到的一个功能就是下拉刷新,上拉加载更多。虽然有很多第三方框架可以使用,但是有时我们还是想自己手动定制来达到目的。下面我们来具体看看如何实现下拉刷新这个功能我们可以使用系统自带的refreshControl,但是这个控件只能用在tableViewController里面。具体实现看代码:viewControl

2016-04-21 22:37:03 2234

转载 OC最实用的runtime总结.

前言runtime的资料网上有很多了,部分有些晦涩难懂,我通过自己的学习方法总结一遍,主要讲一些常用的方法功能,以实用为主,我觉得用到印象才是最深刻的,并且最后两个demo也是MJExtension的实现原理,面试的时候也可以多扯点。另外runtime的知识还有很多,想要了解更多可以看我翻译的官方文档(有点枯燥),本文的demo下载地址什么是runtime?runtime 是 OC

2016-04-21 22:27:23 2598 1

转载 iOS UIWindow基本介绍

iOS开发UI篇—UIWindow简单介绍一、简单介绍UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindowiOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了一个iOS程序之所以能显示到屏幕上,完全是因为它有UI

2016-04-20 14:41:13 531

转载 KVC 与 KVO 全面总结

KVC, KVO作为一种魔法贯穿日常Cocoa开发,笔者原先是准备写一篇对其的全面总结,可网络上对其的表面介绍已经够多了,除去基本层面的使用,笔者跟大家谈下平常在网络上没有提及的KVC, KVO进阶知识。旨在分享交流。KVC的消息传递valueForKey: 的使用并不仅仅用来取值那么简单,还有很多特殊的用法,集合类也覆盖了这个方法,通过调用 valueForKey: 给容

2016-04-20 14:36:57 511

转载 浅谈HTML5 WebSocket的机制

WebSocket机制我们知道WebSocket是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(不知道的可以看下全双工通信RS-422标准),能更好的节省服务器资源和带宽并达到实时通讯,它建立在TCP之上,同HTTP一样通过TCP来传输数据,但是它和HTTP最大不同是:WebSocket是一种双向通信协议,在建立连接后,WebSocket服务器和Browser/Clie

2016-04-19 21:07:19 1422

转载 RTMP协议

RTMP协议 RTMP协议封包 由一个包头和一个包体组成,包头可以是4种长度的任意一种:12, 8, 4,  1 byte(s).完整的RTMP包头应该是12bytes,包含了时间戳,AMFSize,AMFType,StreamID信息, 8字节的包头只纪录了时间戳,AMFSize,AMFType,其他字节的包头纪录信息依次类推 。包体最大长度默认为128字节,通过chunkSiz

2016-04-19 21:03:48 760 1

原创 iOS 奇葩问题,记录大全

1. 问题描述:     在app中,很多UIImageView设置图片后,比原有的尺寸都大,就算设置了 contentMode,也不行,  clipsToBounds,也不行。  自定义视频,也会超出原有的尺寸。  解决办法:   1.设置启动图片。 1-3@x的图片,都要设置。  (是不是特别莫名其妙)2. 问题描述 

2016-04-19 15:23:24 659

原创 iOS 如何把view转成image,截屏分享/ 整个视图的分享。

问题: 长图截屏分享(超出一个屏幕的view分享)今天为了做一个类似长图截屏分享的功能,局限性再与截屏的时候,只能把当前屏幕所看见的部分给截下来,如果这个ViewController很长,不能一页显示不全,我想把这个页面分享出去,要分享全部的,完整的页面,别人看上去才有意义,除此外,用文字,用链接,都不好使,仅仅要的就是把整个view给完整的截下来,做成一张图片。 解决方案: 

2016-04-18 23:07:08 5957

原创 App环境分离的实现:iOS篇,正式版 与 beta版本的快速分离

问题:  相信大家在公司上班的时候,会经常遇到, 正式版本,开发版本,还有预上线版本等等。 然后要根据老板的要求,测试人员的要求,需要给他们安装不同的版本,并且多个版本要同事存在,以便于他们发现问题,其实版本与版本之间差别并不是很大,仅仅只是一部分的请求,证书,些许功能上的变化,以前想到的最简单的办法就是,copy 工程,然后改 - 改 - 改, 到时候给他们装的时候, 就各种打开工程,给

2016-04-18 12:12:12 3261

原创 android imageView 图片显示方式属性

今天在学习类似iOS自定义的TableViewCell. 即是安卓中的ListView.然后自定义layout.xml通过adapter进行绑定, 在自定义cell的时候,用到了imageView,就顺便查了下他的scaleType的含义,就类似iOS中的UIimageView的ContentMode,都是相对应的。   android:scaleType 是控制图片如何resized/m

2016-04-11 18:04:23 2410

原创 Android 开发之 定时器 Handler + Runnable方式

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.other_main); //开始进行更新 selfHandler.postDelayed(runnable, 1000);

2016-04-07 15:48:04 6073

原创 Android 中 AutoCompleteTextView 自动补全功能

最近在学习安卓开发,发现安卓中,很多控件都按照具体的功能来独立出来了,比如这个自动补全的控件。 废话不多说,先看下效果:当我打aa的时候,就会提示出来。 下面直接上代码核心部分xml部分: <AutoCompleteTextView android:layout_width="wrap_content" android:layout_h

2016-04-07 13:33:07 1316

转载 github desktop for mac 上传项目步骤以及注意事项

1.注册一个github账号在官网。https://github.com/github 2.下载mac版的github客户端。网址:https://desktop.github.com3.之后会在出现安装。安装成功之后,会出现这个图标4.打开github的客户端并且登陆客户端。5.注意:a.在创建工程过程中,工程的名字一定不要有" "空格出现,不然就添加不进

2016-04-07 09:55:45 8206 5

原创 Undefined symbols for architecture i386: "_fwrite$UNIX2003",在集成环信SDK,UI的时候遇到的问题总结

1. 今天集合环信SDK时碰到这个样的一个问题Undefined symbols for architecture i386: "_fwrite$UNIX2003", referenced from: _hex_dump_internal in libEaseMobClientSDK.a(dump.o) _pkt_dump_internal in libEase

2016-04-06 18:59:14 1049

转载 轻松学习之 IMP指针的作用

可能大家一直看到有许多朋友在Runtime相关文章中介绍IMP指针的概念,那么IMP究竟有什么实际作用呢?让我们先从一个函数看起来。Method Swizzling如果对Runtime有一定了解的话,一定听说过或者用过这个函数:1void method_exchangeImplementations(Method m1, Me

2016-04-05 13:18:04 430

ios UIPickerView封装的中国省/市/区地址选择器 ,含有中国最新城市plist文件

ios UIPickerView封装的中国省/市/区地址选择器 ,含有中国最新城市plist文件

2016-05-24

中国所有城市的plist文件

中国城市列表,包含一个city的plist可以方便用户在其他地方使用。项目还添加了一个热门城市的代码,如不需要可自行修改不添加。

2016-05-24

iOS实现自定义相册多选demo

获取系统所有照片,并自定义选择照片的界面, 可实现多选。

2015-12-04

iOS 3Dtouch 开发demo

iOS9 3D Touch iOS 教程 ShortcutItem使用

2015-11-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除