自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 iOS支付(包括支付宝、微信、银联)封装

前言最近在学习构架,感觉到构架的魅力,自己用构架思想封装了一个支付集合,欢迎使用!开发环境1、xcode 8以上2、iOS 7.0以上支付SDK的集成1、支付宝参照博客 支付宝支付集成 ,里面很详细这里就不多说了。2、微信支付参照博客 微信支付集成  3、银联支付银联支付要比支付宝及微信要简单 参照  银联支付集成工程目录结构依赖

2017-11-04 09:56:10 3331

原创 UIGestureRecognizer 获得target和action

NSArray *targets = [view gestureRecognizers]; if (targets.count != 1 ) { return; } //或者使用imageView. gestureRecognizers获取 for (UIGestureRecognizer *recognizer in targ...

2019-07-30 11:01:51 811

原创 UIControl(UIButton,UISegmentedControl等)获得target和action

UIButton *button = (UIButton *)view; NSSet *targets = [button allTargets]; if (targets.count==1) { id target = [targets anyObject]; NSArray * actions = [button ...

2019-07-30 10:57:56 417

原创 iOS 修改苹果开发者公司账号(Apple ID 更换)

公司之前申请开发者账号的人离职了,需要更换开发者公司账号,以免以后出问题。(只针对组织账号中的公司账号,非企业和个人账号)第一种方案:直接修改Apple id1、登录 苹果的Apple id管理网站https://appleid.apple.com/#!&page=signin,输入Apple id的账号密码,登录成功之。2、点击编辑,然后点击编辑Apple id,在下面的输...

2019-03-04 17:46:03 9896

翻译 升级Xcode 10必看 stdc++.6.0.9

Xcode 10发行说明 更新您的应用以使用新功能,并针对API更改测试您的应用。Xcode 10可在Mac App Store中使用,包括适用于iOS 12,watchOS 5,macOS 10.14和tvOS 12的SDK.Xcode 10支持iOS 8及更高版本,tvOS 9及更高版本以及watchOS 2及更高版本的设备上调试。Xcode 10需要Mac运行macOS 10.1...

2018-09-20 10:30:41 6960

原创 iOS数据持久化之NSUserDefaults动态加载

背景当我们用NSUserDefaults 存储数据时,对单例对象给成员变量复制时,会重写set,get方法。重复代码多。怎样动态添加属性并自动添加到NSUserDefaults 里。原理通过runtime 动态获得到成员变量名称,并通过@dynamic 手动添加set,get方法,并自动映射。实现自动保存NSUserDefaults里。代码使用1、XPPreferences...

2018-08-29 12:29:01 275

原创 OCR:iOS身份证(正反面)识别及银行卡识别

场景1、想要实现身份证识别及银行卡识别。2、不想用第三方(免费识别有上限,要想更多识别需要花钱)只想实现身份证和银行卡识别,没必要花钱。3、不想用第三方开源框架(OpenCV、TesseractOCRiOS等)集成内存太大,为了这两个功能,没必要app包过于增大。4、本demo就简单的搞了一下(通过c++,简单有效的识别身份证及银行卡)。5、不讲原理,只讲怎样使用demo,不...

2018-08-27 16:40:44 18663 16

原创 mac+Jenkins+gitLab+蒲公英 (iOS自动打包)

1、Jenkins的安装与启动方式一:直接下载安装包jenkins安装包下载   安装完成后在 Terminal (终端)中输入,即可打开 Jenkinsopen /Applications/Jenkins/jenkins.war方式二:使用homebrew安装 homebrew(如果已经安装,跳过此步)ruby -e "$(curl -fsSL https://raw.githubusercon...

2018-06-19 14:42:43 1720 1

原创 Java服务器的微信支付注意事项

服务器(微信支付)注意事情第一点:服务器订单签名(一次签名)注意事项一:订单号产生,服务器产生注意事项二:生产订单算法(采用微信提供算法)注意事项三:生成随机字符串(服务器,同样你也要采用微信API demo提供算法)注意事项四:商品描述格式(应用名称-商品名称)注意事项五:商品价格单位(价格:单位分)第二点:服务器调用统一下单接口,获取prepay_idAPI地址:https://pay.wei...

2018-05-05 10:31:27 532

原创 ARKit 介绍

iOS 11 引入了 ARKit,这是⼀个全新的框架,允许开发者轻松地为 iPhone 和 iPad 创建无与伦比 的增强现实体验。通过将虚拟对象和虚拟信息同⽤户周围的环境相互融合,ARKit 使得应用跳出 屏幕的限制,让它们能够以全新的方式与现实世界进⾏交互。基础技术视觉惯性⾥程计ARKit 使⽤视觉惯性⾥程计 (Visual Inertial Odometry, VIO) 来精准追踪周围的世界...

2018-04-26 10:28:57 1001

原创 Shell语言基础学习

1、第一个Shell程序?1.1 创建Shell文件命令:touch hello.sh1.2 编写Shell程序定义文件声明#!/bin/bashecho "Hello world!"#!:表示约定标记,他会告诉系统这个脚本需要什么样子的解释器来执行,既是一种脚本体现。echo:表示命令用于输出文本信息

2017-12-25 14:26:09 278

原创 版本更新管理

单例封装了一个版本更新管理类UI效果:+ (instancetype)sharedInstance {    static UpdateVersionManage *sharedInstance =nil;    static dispatch_once_t oncePredicate;    dispatch_once(&onc

2017-11-21 08:59:09 879

原创 责任链模式Swift版

事件角色案例1、员工请假,要走流程。2、ceo可以批10天假。3、总监可以批5天假。4、项目负责人可以批3天假。5、由员工请假的天数决定哪个领导审批。运行环境1、xcode8以上2、iOS10以上3、swift3.0以上步骤第一步:新建抽象处理类->TXP_Leader(领导类) //领导抽象类//第一个特点:定义下一个节点

2017-11-08 11:23:40 343

原创 swift版webview加载网页(带进度条)

比较简单,直接上代码import UIKitimport WebKitimport SnapKitclass CMWebVC:UIViewController, WKNavigationDelegate {        var webUrl: String?    var webView: WKWebView

2017-11-08 09:19:15 3119

原创 Color管理(包括RGB,十六进制,增加缓存)类

颜色管理工具1、单例管理2、RGB管理3、十六进制(#FFFFFF,0xFFFFFF)管理4、缓存机制(色值进行了缓存,若存在则直接从缓存池取)5、内存释放机制(当颜色值存储大于30(可自己设置)个时或内存警告时,会释放缓存池)工程目录代码ColorValues  色值宏类#ifndef ColorValues_h#define Colo

2017-11-07 10:54:50 1003

转载 iOS 支付宝支付

原创地址:http://www.jianshu.com/p/1ca250b92ecb首先,支付宝支付的流程大致如下:1、下载和查看支付宝官方Demo直接进入支付宝的支付平台下载:doc.open.alipay.com/doc2/detail.htm集成过程基本就是按照上面的四个流程就可以完成iOS的支付宝SDK。那我们一起按着步骤来集成:1、下载SDK和Demo。SDK&DEM

2017-11-03 15:22:22 401 1

转载 IOS开发--微信支付

原创地址:http://www.cnblogs.com/goodboy-heyang/p/5255818.html前言:下面介绍微信支付的开发流程的细节,图文并茂,你可以按照我的随笔流程过一遍代码。包你也学会了微信支付。而且支付也是面试常问的内容。     正文: 1、首先在开始使用微信支付之前,有一些东西是开发者必须要知道的,打开下面链接:

2017-11-03 10:02:42 515

原创 封装AFNetworking3.0

前言由于公司原网络请求的框架比较乱,所以自己封装了一个轻量级的网络框架。配置AFNetworking环境AFNetWorking 更新了3.0,之前的工程一直用的2.63。这两个版本变化还是比较大的,以前的AFNetworking是NSURLConnection + NSOperation,但是3.0版本移除了对NSURLConnectionOperation的支持

2017-11-02 09:46:21 518

原创 观察者模式android版

1、观察者模式定义?                  当一个对象状态发生改变,所有依赖于他订阅者都会发生改变(收到状态改变的通知)。 2、观察者模式-应用场景?                  场景一:关联场景                  场景二:事件多级触发                  场景三:跨系统消息交互场景 3、观察者模式-角

2017-10-04 17:21:32 291

原创 观察者模式Swift版

1、观察者模式定义?                  当一个对象状态发生改变,所有依赖于他订阅者都会发生改变(收到状态改变的通知)。 2、观察者模式-应用场景?                  场景一:关联场景                  场景二:事件多级触发                  场景三:跨系统消息交互场景 3、观察者模式-角

2017-10-02 16:31:23 534

原创 观察者模式OC版

1、观察者模式定义?                  当一个对象状态发生改变,所有依赖于他订阅者都会发生改变(收到状态改变的通知)。 2、观察者模式-应用场景?                  场景一:关联场景                  场景二:事件多级触发                  场景三:跨系统消息交互场景 3、观察者模式-角色划分?

2017-10-01 15:49:14 391

原创 广播接收者BroadcastReceiver

1.广播接收者 BroadcastReceiver(四大组件之一)广播的作用:a.在不同的应用之间实现数据的传递和共享 b.在同一个应用中,不同组件中实现数据的传递接收系统发送的广播:a.开机b.网络状态的切换 c.电量的改变d.收到短信   ---》拦截短信(垃圾)  写一个广播接收者,频道调成跟系统收到短信发送的广播一致,然后将优先级设为最高,当它接收到

2017-09-27 21:24:33 350

原创 Android项目的目录结构(Eclipse)

Android项目的目录结构介绍

2017-09-25 20:09:16 356

原创 iOS多线程pthread

-(void)pthreadDemo{        /**     pthread 是属于 POSIX多线程开发框架          参数:     1.指向线程代号的指针     2.线程的属性     3.指向函数的指针     4.传递给该函数的参数          返回值     -

2017-09-12 14:18:57 207

原创 android屏幕旋转,但是不重建生命周期

1.在清单文件中增加 权限声明2.声明Activity可以捕获的事件类型            android:name="com.example.widget_high_demo.MainActivity"            android:label="@string/app_name"            android:configChanges="orien

2017-08-06 19:42:52 1197

原创 swift-16进制颜色

func colorWithHexString(hexColor :String) -> UIColor {                if hexColor.isEmpty {            returnUIColor.clear        }             var cString = hexColor.trimm

2017-07-31 15:35:43 471

原创 判断是否是安卓设备

function isAndroid() { var u = navigator.userAgent; if(u.indexOf('Android') > -1 || u.indexOf('Linux') > -1) { return true; } }

2017-07-16 13:37:00 519

原创 安卓activity生命周期

安卓activity生命周期

2017-07-08 21:41:07 408

原创 swift-image上传图片时需要旋转在上传服务器代码

// 图片旋转,有时服务器不处理图片,显示客户端时没有正常显示    func fixOrientation() ->UIImage {        ifself.imageOrientation == .up {            returnself        }                var transform =

2017-07-02 19:04:49 784

原创 swift-字符串常用修正

//是否含表情符 func stringWithoutEmoji() -> String {        var array = [Int]()        var i =0        for scalarin unicodeScalars {            switch scalar.value {           

2017-06-28 10:50:17 247

原创 iOS,OC给button添加block点击事件扩展

- (void)handleClickCallBack:(ButtonClickCallback)callBack {    [selfhandleClickEvent:UIControlEventTouchUpInsidecallBack:callBack];}- (void)handleClickEvent:(UIControlEvents)aEve

2017-06-25 18:54:57 1574

原创 swift给UIbutton添加闭包扩展,方便,简单实用

import UIKitlet cmButtonAssociatedkey = UnsafeRawPointer.init(bitPattern:"cmButtonAssociatedkey".hashValue)extension UIButton {    func addAction(for controlEvents:UICont

2017-06-25 18:51:16 1045

原创 swift-判断是否已获得相机、相册权限

// 相机权限func isRightCamera() -> Bool {    let authStatus =AVCaptureDevice.authorizationStatus(forMediaType:AVMediaTypeVideo)    return authStatus != .restricted&& authStatus != .den

2017-06-25 18:46:38 3207

原创 跳转到系统设置页面

// 跳转到系统设置权限界面func goSettings() {    let settingsUrl:URL =NSURL(string: UIApplicationOpenSettingsURLString)!as URL    if UIApplication.shared.canOpenURL(settingsUrl) {        UIA

2017-06-25 18:44:15 317

原创 html适配移动开发需要加一行代码

html适配移动开发需要加一行代码head> meta charset="UTF-8"> meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"/> title>titlet

2017-06-22 16:09:44 799

原创 swift-工具类-日期(类扩展)

swift通过类扩展给date增加方法

2017-06-22 15:35:38 803

原创 单例模式

单例标准模式

2017-04-17 14:32:17 245

空空如也

空空如也

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

TA关注的人

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