自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Swift:左侧滑动的判断,连动。

HomeViewController.swiftfunc setBarUI() {        ...        //一定要将menuView.view添加进去        UIApplication.shared.keyWindow?.addSubview(menuView.view)        menuView.bindt

2017-04-08 09:33:55 1139

原创 Swift:向下滚动时BannerCell扩大效果,导航栏的颜色渐变效果:

向下滚动时BannerCell扩大效果先初始化offY:  var offY = Variable(0.0)      //这块代码的作用是当BannerCell向下拉的时候,其中的图片也会相应的变大拉长。                offY            .asObservable()            .subscri

2017-04-06 21:13:34 862

转载 Shimmer–为应用任意视图添加闪烁效果

Shimmer,可以给你的应用任意视图添加闪烁效果.它可以用于指示一种加载中的状态.项目主页:Shimmer最新示例:点击下载系统环境iOS 6 +安装通过CocoaPods安装pod 'Shimmer'12pod'Shimmer'手动安装将Shimmer文件夹中的所有源代码拽入项目中即可.使用

2017-04-03 21:07:41 1435

转载 pod 'KVOController', '~> 1.2.0'

KVO以及facebook开源库KVOController的使用KVO,即:Key-Value Observing,当特定对象的属性被改变后,观察者会接收到通知。假设一个View Controler 里面有一个Clock类,有一个时间data属性标示当前时间,每隔一秒变化一次, 一个UILabel, Clock的data属性不断变化后会显示显示到label上在ViewControl

2017-04-01 23:38:24 699

原创 pod 'KeychainSwift', '~> 7.0.0'

KeychainSwift源码地址:https://github.com/marketplacer/keychain-swift#readmekeychain-swift 是一组函数,能够帮助将文本和数据存入到 Keychain。使用示例:如果你使用 Carthage 或者 CocoaPods 安装方法,将 import KeychainSwift 添加到你的源

2017-04-01 23:06:03 1057

原创 Swift 版 HTML/XML 解析器 Ji

Ji框架的地址:https://github.com/honghaoz/Jiimport UIKitclass ViewController: UIViewController {overridefunc viewDidLoad() {super.viewDidLoad()// Init with data

2017-04-01 14:49:09 978

原创 BannerView.swift,BannerCell.swift,StoryModel.swift

在BannerView.swift文件中import UIKitimport RxSwiftimport RxDataSourcesimport RxCocoaimport Kingfisherclass BannerView: UICollectionView {        let imgUrlArr

2017-04-01 11:16:28 446

原创 RefreshView.swift: 用了Then协议库

import UIKitclass RefreshView: UIView {    let circleLayer =CAShapeLayer()    let indicatorView =UIActivityIndicatorView().then {        $0.frame = CGRect(x:0, y:0,

2017-03-30 20:05:57 798

原创 iOSアプリApple再審査・再申請手順

http://examination-03.hatenablog.com/entry/2014/08/29/iOSアプリ審査Reject_~再審査・再申請手順~

2017-03-30 16:57:41 365

原创 RxSwift,Kingfisher,Moya,HandyJSON的结合:APP启动时增加了网络上下载的图片

在主要的MainViewController.swift中:import UIKitimport Kingfisherimport Moyaimport RxSwiftclass MainViewController: UITabBarController {    let provider =RxMoyaProv

2017-03-28 19:41:56 2554

原创 报错原因:Auto property synthesis will not synthesize property 'title'; it will be implemented by its sup

Auto property synthesis will not synthesize property 'title'; it will be implemented by its superclass, use @dynamic to acknowledge intention错误原因:自动属性合成不会合成属性title;它将由它的超类,使用承认意图 @dynamic 执行

2017-03-23 15:46:03 2076

原创 报错原因:Incompatible pointer types sending 'UIImage *' to parameter of type 'NSString * _Nonnull'

CUICatalog: Invalid asset name supplied: (null)报错原因:Incompatible pointer types sending 'UIImage *' to parameter of type 'NSString * _Nonnull'模型类型与视图使用模型设置数据时不匹配解决方案: 检查模型类型,使得视图对象里使用其时

2017-03-23 14:58:39 14452 1

原创 判断系统版本的另外一种方法:NSFoundationVersionNumber

//iOS10以上,floor:向下取整    if(floor(NSFoundationVersionNumber) >NSFoundationVersionNumber_iOS_9_x_Max){         }    //iOS10以下    else{           }#if TARGET_OS_IPHONE

2017-03-13 08:50:19 5761 2

原创 iOS开发————数据本地化方式之SSKeychain--基础上进行CBC加解密

if (![SupportUserDefaultsretrieveUUID])    {        if ([SupportKeyChainisExistUUID])        {            [SupportKeyChaingetKeyChainUUID];        }        else     

2017-03-11 19:56:45 323

转载 sockaddr_in结构体

点击进入结构如下:struct sockaddr_in {__uint8_tsin_len;sa_family_tsin_family;in_port_tsin_port;structin_addr sin_addr;charsin_zero[8];};sin_family指代协议族,在socket编程中只

2017-03-07 10:49:33 9497

原创 IOS开发第三方库JASidePanelController使用介绍

JASidePanelController *jaSidePanelController = [[JASidePanelControlleralloc] init];        SlideMenuViewController *slideMenuViewController = [[SlideMenuViewControlleralloc] init];   

2017-03-04 21:46:26 336

转载 iOS获取音频的专辑图与视频的缩略图

在制作音频播放器的时候,显示专辑图、艺术家、歌曲名等可能首先想到的是用字典封装。但实际上,音频文件中封装了这些数据,所以直接从mp3等文件中读取出来就可以了。而视频,系统的播放器类是没有缩略图显示的,需要自己读取。本文将讲解,如何获取音频和视频图片。环境信息:Mac OS X 10.9Xcode:5.1.1IOS 7.1.1正文:导入框架:

2017-02-28 15:48:38 576

转载 sortedArrayUsingComparator

1.降序 NSArray *tMlist = @[@4,@5,@2,@6,@3,@7,@8]; //降序序8,7,。。 NSArray *tArray = [tMlist sortedArrayUsingComparator:^NSComparisonResult(id obj1, id obj2) {

2017-02-28 09:39:32 509

转载 UICollectionView与UITableView在复用时,数据重叠问题

在进行了cell的复用后,如果要避免出现数据重叠,图片错乱的问题,首先要注意,cell中Label、Button、ImageView等的创建要放在初始化方法里面,tableViewCell的初始化方法是- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{

2017-02-27 15:05:53 1604

转载 技术干货 - 根据不同系统使用不同样式图片(交换方法)

如何通过不去手动一个个修改每个UIImage的imageNamed:方法就可以实现为该方法中加入版本判断语句?步骤1.为UIImage建一个分类(UIImage+Category)2.在分类中实现一个自定义方法,方法中写要在系统方法中加入的语句,比如版本判断+ (UIImage *)fy_imageNamed:(NSString *)name { dou

2017-02-24 18:46:04 412

转载 技术干货 - tableView多种Cell的选择思路

解决的问题控制器中不止一种Cell, 我们怎么来设计呢?? 我的实现方法是KeysArr, 那什么是KeysArr呢,我们来看代码.步骤1.首先我们需要创建一个全局类 (这个写法和上周的 投机流 自定义转场有异曲同工之妙)创建全局类全局类中的每一个Key对应着你的一个Cell.hextern NSString * const

2017-02-24 18:30:26 786

转载 技术干货-`setValue`和`setObject`的区别

针对调用者是dictionary而言1、setObject:forkey:中value是不能够为nil的,不然会报错。setValue:forKey:中value能够为nil,但是当value为nil的时候,会自动调用removeObject:forKey方法.总结:setValue:forKey:中key的参数只能够是NSString类型,而setObject:forKe

2017-02-24 18:26:02 558

转载 中英文字符计算

//按照中文两个字符,英文数字一个字符计算字符数-(NSUInteger)unicodeLengthOfString:(NSString *)text {    NSUInteger asciiLength = 0;    for (NSUInteger i = 0; i length; i++) {        unichar uc = [text characterAtI

2017-02-24 16:09:34 2401

转载 Objective-C id 作为 Swift Any--[AnyHashable : Any]

Objective-C id 作为 Swift AnySwift 3 与 Objective-C 的 API 接口比以前的版本更好用了。比如说,Swift 2 把 Objective-C 中的 id 映射为 Swift 中的 AnyObject ,它一般能储存类类型的值。Swift 2 同样为一些桥接的值类型提供了隐式的 AnyObject  ,比如说String 、 Ar

2017-02-24 15:30:26 1947

转载 iOS 中三种定时器的用法NSTimer、CADisplayLink、GCD

一、NSTimer1. 创建方法NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:selfselector:@selector(action:) userInfo:nil repeats:NO];TimerInterval : 执行之前等待的时间。比如设置成1.0,就代表1秒后

2017-02-24 14:03:52 305

原创 progress.fractionCompleted

// MARK: 下载文件    /**     下载文件          - parameter urlStr:      文件的网络地址     - parameter savePath:    保存路径(包含文件名)     - parameter progress:    进度     - parameter resultBlock

2017-02-24 11:43:48 1238

空空如也

空空如也

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

TA关注的人

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