- 博客(32)
- 收藏
- 关注
原创 RxSwift学习心得
最近接触了RxSwift,有一些心得自己学习体会,有不对的地方还望各路大神多多指教,不喜勿喷,没有官方文档那么正式,根据自己的理解来的RxSwiftObserVerable获得ObservablecombineLatest简单使用binTO简单使用用RxSwift和Alamofire去请求数据ENDRxSwiftRxSwift的目的是让让数据/事件流和异步任务能够更方便的序列化处理
2017-08-30 16:13:13
2104
原创 iOS 简易的画板
//截取制定view 将其转成UIImage classfunc getAppImage(view:UIView) ->UIImage { UIGraphicsBeginImageContext(view.frame.size) let context =UIGraphicsGetCurrentContext()
2017-04-06 14:53:43
496
原创 iOS 通知 和 KVO
///KVO 和通知/*KVO提供一种机制,当指定的被观察的对像的属性被修改后,KVO会自动通知响应的观察者,KVC(键值编码)是KVO的基础 KVO使用:被观察着发生addobserver:forkeyPath:options:context:方法来添加观察者.然后只要被观察者的keypath值发生变化(注意单纯改变值不会调用此方法,只有
2017-03-30 10:50:05
908
原创 Swift UILabel 数字动画效果
昨天去面试 面试官问我 如何实现 label数字由低到高增长。特地整理了一下 用的时候 只要调用这个类 即可实现 在多少s内 有 min - max 的方法///自己写的一个类class UIZJLAnimationLab: UILabel { ///计时器比 NSTimer精确 var timer:CADisplay
2017-03-29 16:35:20
2695
原创 iOS 建造者模式
//【原】iOS设计模式之:建造者模式Builder Pattern,用于改进初始化参数//原文地址http://www.cnblogs.com/wengzilin/p/4365855.html///iOS 建造者模式//感觉建造者模式与工厂方法模式非常类似,但是加入了指挥者类。//工厂模式一般都是创建一个
2017-03-27 15:01:52
418
原创 iOS 单例模式
单例的写法与用法class Handler { ///饿汉模式的单例特点是:在定义的一开始便new一个对象饿汉模式比较安全缺点是比较浪费空间 staticvar handler:Handler =Handler() //懒汉模式的单例特点是:在真正需要new一个对象的时候才
2017-03-27 13:39:02
264
原创 iOS 适配器模式
适配器可以让一些接口不兼容的类一起工作。它包装一个对象然后暴漏一个标准的交互接口。protocol Target { func request()}class Adaptee { func oldRequest() { print("执行了方
2017-03-27 11:21:10
682
原创 整存取 后台 返回的JSON 数据
classfunc saveJSONdata(key:String,data:[BaseBean],containsUserId:Bool) { let preference =NSUserDefaults() let obj =NSKeyedArchiver.archivedDataWithRootObject(data)
2017-02-06 15:00:08
505
原创 iOS swift 支持中文斜体的方法 自己整理
///参数为字体大小 func getItasicFont(font:CGFloat) ->UIFont {//设置倾斜角度 let matrix =CGAffineTransformMake(1,0, CGFloat(tanf(15 *Float(M_PI) /180)), 1,0, 0)///字体描述
2016-12-28 16:02:57
1780
原创 APP(iOS)端 从网页拿到第一张图片
class GetWebviewImageHelper:NSObject, WKScriptMessageHandler { var didGetImg: ((UIImage?) -> (Void))? init(view:WKWebView) { super.init()
2016-11-22 11:02:53
621
翻译 关于 控件抖动以及 互换位置的说写
前段时间由于公司需求,恰好需要做一个CollectionView的Item长按后抖动并且可移动效果。但由于一些原因,当时并没有来得及去处理,所以一直心有遗憾。目前市场上此功能并不少见,而且在github上也有一些类似的开源代码,所以其实总结来说:首先并不能作为一个功能难点,只能说是兴趣至此;其次也是真心希望能帮助一些我能帮助的人,以及希望大家能给些建议。都说不想当将军的士兵不是好士兵,所以我觉得,
2016-11-09 12:02:09
575
原创 各种时间转换 ,对时间的处理
import Foundationclass TimeFormat:NSObject { //11:02 昨天10:20 前天12:32 3月14日9:23 func DayAndTime(time:String) ->String{ let formatter =NSDateFormatter()
2016-10-08 11:56:16
485
原创 iOS 代码实现边框 虚线
//在初始化调用这个方法func addshapeLayer(){ shapeLayer =CAShapeLayer(layer:layer) borderLabel.layer.addSublayer(shapeLayer) }//添加时候 调用这个方法 func draswTopDs
2016-09-22 10:54:16
1636
原创 想微信一样的输入框textview 一次可以输入多行 textView的placeholder提示框
class MessageTextView:UIView,UITextViewDelegate { var commnetToleft:CGFloat = 16 var CancleLabToRight:CGFloat = 8 var commnetToTop:CGFloat = 10 var cancleLabWidth
2016-09-21 23:44:47
930
转载 tableView section随cell移动 ,不在顶到屏幕顶部
加上这段代码即可 func scrollViewDidScroll(scrollView:UIScrollView) { let sectionHeaderHeight:CGFloat = 55 if scrollView.contentOffset.y contentOffset.y > 0 {
2016-09-12 12:34:27
797
原创 APP端后台接收消息处理并推送
可能写的不清楚,自己理解用的。继承个推细节不提,主要提一下继承好个推后如何处理收到的消息,当使用apple的push证书到处成p12文件后传到个推服务器。然后使用一下几个方法 // MARK: - 用户通知(推送) _自定义方法 /** 注册用户通知(推送) */ func registerU
2016-09-07 12:14:24
5672
转载 UIButton的点击状态
摘要* UIControlEventTouchDown * UIControlEventTouchDownRepeat * UIControlEventTouchDragInside * UIControlEventTouchDragOutside * UIControlEventTouchDrag...UIButton的点击态UIButton的点击事件状态UIContro
2016-08-30 16:10:21
976
原创 tableview 加载图片时内容混乱,亲测好用,以及 图片保存到本地相册
需要导入sdwebimage库 private func setImageFromCache(imageUrl:String) { var image:UIImage! dispatch_async(dispatch_get_global_queue(0, 0)) { [weakself] in i
2016-08-29 14:13:49
550
原创 关于GCD 延时操作 简单理解 (dispatch_asycn,dispatch_sycn)
同步(sync) 和异步(async) 的主要区别在于会不会阻塞当前线程,直到Block 中的任务执行完毕!如果是 同步(sync) 操作,它会阻塞当前线程并等待Block 中的任务执行完毕,然后当前线程才会继续往下运行。如果是 异步(async)操作,当前线程会直接往下执行,它不会阻塞当前线程。同步任务会阻塞当前线程,然后把 Block 中
2016-08-26 13:41:02
1615
原创 swift WKWebView 某些网址无法加载
在使用wkwebVIew的过程中 有事候会出现一些包含中文的网址没法加载 ,调用 stringByAddingPercentEncodingWithAllowedCharacters的方法就可以了额 示例: let newUrl =url .stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URL
2016-08-22 13:55:32
2656
原创 shareSDK配置以及遇到的问题
配置sharesdk的方法以及问题,sharesdk3,大家可以来看看 ,提提意见,本人折腾了半天,中与搞好了
2016-07-06 16:13:25
3715
翻译 UIImagePickerController简单使用
UIImagePickerController简单使用1920 0UIImagePickerController简单使用UIImagePickerController简单使用UIImagePickerController用于管理可自定义的,系统支持的用于获取设备上图片和视频的用户界面。同时可以用于在App中选择存储的图片和视频。一个UIImagePickerControll
2016-06-21 09:52:37
320
转载 wkwebView的 学习
自从iOS8开始,Apple引入了WKWebView欲代替UIWebView。相比而言,WKWebView消耗内从更少,功能也更加强大。让我们来看看WKWebView怎么使用吧!0.初始化(1)首先需要引入WebKit库复制代码代码如下:#import (2)初始化方法分为以下两种复制代码代码如下:// 默认初始化- (ins
2016-06-02 09:26:52
1845
原创 设置字符串中某一字为不同的颜色
var newCreateData:NSMutableAttributedString! let str = zan + cai newCreateData = NSMutableAttributedString(string: str) newCreateData.addAttribute(NSForegr
2016-05-20 13:47:23
669
原创 设置导航栏的标题 背景颜色和字体大小
self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName:UIColor.blueColor(),NSFontAttributeName:UIFont .systemFontOfSize(40)];
2016-05-20 12:08:37
860
翻译 swift 调用相机和相册的demo
//// demo.swift// 相机demo//// Created by CmyLove on 16/5/3.// Copyright © 2016年张金良. All rights reserved.//import Foundationimport UIKitclass Enterp
2016-05-13 10:30:37
5785
原创 textVIew 在输入时 设置行数并且自适应高度 上移动
1.首先设置textView的frame 根据视图的 func textViewDidChange(textView: UITextView) { //允许最高的高度的行数 maxHeight = 72 //frame设置 fram = textView.frame
2016-05-13 09:57:06
2573
原创 动态监听键盘高度调整文本输入框
//自定义键盘key事件 func addCustomKeyboardEvent() { NSNotificationCenter.defaultCenter().removeObserver(self) NSNotificationCenter.defaultCenter().addObserver(self, selector: "
2016-05-10 08:58:25
368
原创 机型判断,写在APPdelegate里面
private func initPhoneType() { if self.window?.frame.width ==414 { AppDelegate.phoneType = PhoneType.IPHONE_6_P }else ifself.window?.frame.width ==375 {
2016-04-18 10:49:33
286
原创 UIlabel 中的字体对齐
我们平时对于UILabel对齐只要设置想应的 firstlabel.frame.minY = secondLabel.frame.minY 就能实现label的对齐, 但是有的时候字体的大小不一样就可能会造成 label.frame.minY,一样,而字体由于FONT大小不一样,而Font 一般是居中(上下居中)显示在label 上,所以就有可能造成比较明显的差异,如下图,我自己写了一个方法如
2016-04-14 22:38:28
700
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人