码农的青春

没有最好的语言,只有最好的程序员。没有最好的技术,只有最适合项目的技术。...

iOS 仿微信相册选择照片imagePicker(Swift) 序号 预览缩略图

序:微信最新版,选择照片控件细节有所改变,一般有轮子我是不会从新造的 。产品要求一模一样,无奈重新写。调查了一下,GitHub大部分仿微信imagePicker还是基于TZImagePicker,swift出了那么长时间了。决定写一个swift版,因在项目中,时间有限,所以在GitHub找...

2018-08-24 13:24:26

阅读数 1569

评论数 0

iOS Runtime Method IMP指针详解

Method IMP 概念介绍  OC是消息转发机制,kei

2017-07-20 13:31:03

阅读数 1568

评论数 0

Runtime 创建动态一个类 添加成员变量 属性

序:     这篇文章主要介绍OC Runtime怎么动态创建类,添加成员变量,添加属性,对象动态绑定keyValue,添加方法。 (主要介绍成员变量和属性) 对于概念还不理解的可以看之前的博客。代码说的再多不如自己写一遍,写过之后肯定有不同的理解。好脑子不如烂笔头,没有什么概念要说的,代码里有...

2017-07-14 16:37:01

阅读数 1166

评论数 0

NSInvocation 详解

NSInvocation 简介          在上篇文章关于消息的转发中介绍了,通过方法签名NSMethodSignature产生NSInvocation,然后配置NSInvocation参数进行消息的转发。那么NSInvocation到底是什么呢,他在OC中扮演什么角色呢?        ...

2017-07-13 16:28:01

阅读数 797

评论数 0

Runtime消息转发机制

iOS 消息发送机制 首先要知道Runtime的时候类的结构: struct objc_class {     Class _Nonnull isa  OBJC_ISA_AVAILABILITY; #if !__OBJC2__     Class _Nullable super...

2017-07-13 12:05:28

阅读数 671

评论数 0

iOS Runtime应用小例子 不引入类怎么创建这个类的对象和执行类的方法

面试的时候面试官可能会问到这个问题:不引入类怎么创建这个类的对象和执行类的方法 想必大家都知道Runtime 。到底Runtime是怎么创建的呢,下面是一个小demo。 介绍都写在备注里了,代码也放在github。我就不赘述了。 大家可以在终端利用clang将m文件重写未cpp文件查看...

2017-06-02 17:33:20

阅读数 1370

评论数 0

iOS Runtime msg_send报错 too many argument to function call

BUG:使用objc_msgSend时报错 原因:Xcode默认设置是禁用Runtime objc_msgSend call方法的 解决办法: 将 objc_msgSend设置成no.不让禁用即可。 不用担心,苹果既然有这个设置。所有用objc_msgSend肯定可以上架的。

2017-06-02 15:29:51

阅读数 823

评论数 0

Windows 10系统如何设置L2TP拨号

Windows 10系统如何设置L2TP拨号? 本文介绍Windows 10系统设置L2TP Over IPSec(加密隧道)的设置方法。 设置之前,请确保Windows 10系统的电脑与L2TP服务器均已经连接到网络。文中涉及到的参数如下表: 注意:此处参数配置仅供本文讲解参考,真实环境中以...

2019-05-09 14:14:09

阅读数 20

评论数 0

Swift 超简单的验证框架ValidateSwift

ValidateSwift gitHub地址 简介 使用起来超级简单的text验证框架,从此远离一堆代码验证一个表单。   示例 详细例子可以运行示例程序查看,克隆这个仓库,在Example文件夹下执行pod install   支持 iOS 8.0 ...

2019-04-23 18:07:23

阅读数 35

评论数 0

ERROR | [iOS] unknown: Encountered an unknown error (Could not find a `ios` simulator (valid values:

环境: os:Mac os Mojave10.14.4 Cocospod:1.6.0beta   操作: pod spec lint   错误: ERROR | [iOS] unknown: Encountered an unknown error (Coul...

2019-04-23 09:50:02

阅读数 25

评论数 0

Cocospod 升级到指定版本

1.检查当前安装版本列表 gem list --local | grep cocoapods NvrdeiMac:ValidateSwift nvr$ gem list --local | grep cocoapods cocoapods (1.6.0.beta.1, 1.5.3) cocoap...

2019-04-23 09:41:57

阅读数 29

评论数 0

Unable to download data from https://gems.ruby-china.org/ - bad response Not Found 404

问题: 升级Cocospod的时候,报错。   环境 os: Mojave10.14.4 cocospod:1.6.0beta   报错: ERROR: Could not find a valid gem 'cocoapods' (= 1.6.1), her...

2019-04-23 09:33:38

阅读数 22

评论数 0

谈一谈Coders Programmer Developer的区别

先看一张图: 外国友人的博客原文 Coder:能搞定问题,但水平一般; Hacker: 偏底层,对某些领域理解很深; Programmer:会编程理解算法,经常独立工作,水平较高; Developer:是通才,能贯通地使用各种系统和语言,善于沟通,与人合作; Computer Scientis...

2019-04-11 14:51:27

阅读数 41

评论数 0

Swift 小心字典Value等于nil(容易出错)

看书的时候看到 下面一段代码: var dicWithNils:[String:Int?] = [ "one":1, "two":2, "none":nil ] 现在要求把two这个key的值变成nil 错误...

2019-04-10 16:17:38

阅读数 41

评论数 0

Swift 使用lexicographicallyprecedes 多个参数排序

有时候我们需要用两个或者三个参数进行,排序比较。 lexicographicallyprecedes函数介绍 lexicographicallyprecedes可以看下苹果官方文档的介绍。 这里简单说一下: func lexicographicallyPrecedes<Other...

2019-04-10 15:24:19

阅读数 25

评论数 0

听说"快应用"了没?

背景介绍 快应用是一种新的应用形态,以往的手机端应用主要有两种方式:网页、原生应用;网页无需安装,却体验不是很好;原生应用体验流畅,却需要从应用商店下载安装,难以一步直达用户;快应用的出现,就是希望能够让用户无需下载安装,并且还能流畅的体验应用内容。 为了达到上面的目标,快应用建立一种新的语言...

2019-04-01 09:05:47

阅读数 22

评论数 0

Swift5 新特性预览

Apple将在今年晚些时候大概秋季发布会发布Swift5,Swift5主要焦点在于ABI(Application Binary Interface)对于Swift标准库的稳定,下面介绍Swift5特性: 1.ABI稳定 1.1什么是ABI稳定 在运行时Swift二进制文件通过ABI与其他...

2019-03-29 16:52:29

阅读数 52

评论数 0

996.ICU Github一天即将突破50000 star

996.ICU 这是什么东西呢? 进来看 这是一位程序员大佬对996工作的控诉,对于996.icu,作者解释为“工作996,生病ICU”。 上线得到全世界程序员的响应,不到1天时间star接近50000。 个人观点 合理个人意愿加班和996强制上班完全两码事,工作生活相平衡喊了多长时间,确迟...

2019-03-28 16:18:00

阅读数 306

评论数 0

Swift 全局导入Module

我们有时候需要全局导入一个Module,因为这个组件在每个文件都使用很频繁。在OC的时代,PCH做的工作,Swift怎么办呢 解决办法: 在一个文件里@_exported import SVProgressHUD 一次,相当于全局导入。 ...

2019-03-28 13:49:29

阅读数 173

评论数 0

Swift3.0项目升级到4.2遇到问题

Overriding non-@objc declarations from extensions is not supported 原因: 不支持从扩展中覆盖non-@objc声明 解决:将方法写到主类里 Cannot subscript a value of type ‘[String :...

2019-03-26 17:09:14

阅读数 64

评论数 0

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