- 博客(104)
- 收藏
- 关注
原创 ios更新完ios13出现的UItextField出现的app崩溃问题
一.Xcode环境:Xcode11二.ios系统版本:ios13以上三.出现的问题:在对UItextField使用的时候,修改占位文字的颜色(修改字体大小亦是如此)1.ios13之前采用的方法:KVC2.代码:[_textMessageField setValue:SHP_COLOR_alpha(0xC4C4C4, 1) forKeyPath:@"_placeholderLabel.te...
2019-12-05 13:52:52 1860
原创 关于http转https签名的意见
一.前言简介 之前开发一直使用的是http,但是临时突然要改成https,把我折腾一番.最后总算是解决了问题. 二.两种签名 1.自签 ——>1.1.如果你们后台使用的是自签证书的形式,那么很有可能在你请求的时候会出现下面这种错误的提示Error Domain=NSURLErrorDomain Code=-999 "已取消" UserInfo={NSErrorFailingU
2017-11-08 15:18:10 2192
原创 处理ios11以上的pop回来的回收效果
一. 处理ios11以上的pop回来的回收效果 1. ios11更新之后系统会出现很多莫名其妙的动画效果,今天给大家分享的就是push过后pop回来的回收动画,我不知道大家对这个动画怎么想的,反正本人是很恶心这个动画,所以做了处理,用我提供的这段代码就可以解决这个问题. 2.代码:if (@available(iOS 11, *)) { [UIScrollView appea
2017-11-03 11:40:15 787
原创 js实现选项卡(Tab)
一 . 采用编译器1. WebStorm编译器二. 实现的步骤1. 创建目录(2个)2. 创建目录对应的文件(3个)3. 分别将css的文件和js的文件引入html文件中三. 文件目录展示图四. 选项卡效果图五. Html中的代码展示<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Tab切换<
2016-10-12 14:35:56 2544 1
原创 微信支付,支付宝支付的集成和注意部分
一.支付宝支付1. 集成说明1.1 作为当下最热门的支付宝和微信支付,相信有很多的app都很乐意的将支付宝集成在app中,毕竟只要你开发的app有一点涉及到买卖的,都需要集成支付宝或者微信支付.那么接下来我将为大家一一列举举出我在集成支付宝和微信中遇到的难点和其中出现的一些坑.2. 集成前的准备(里面的步骤在集成文档中都有介绍)2.1 注册支付宝帐号(账户最好采用公司邮箱注册)——附上网址https
2016-09-06 00:13:30 6545
原创 真机调试出错
一 . 写在前面1 .由于这段时间比较忙,正在开发一个新项目,所以耽误了博客更新的时间,后面我会陆续的将前面拖欠的部分补上,在这我表示深深的歉意.二 . 进入正题1 .真机调试时作为每个程序猿必须要做到的事,但是在调试中间也会出现大大小小的错误.今天这篇博客就写我在调试当中遇见的错误和解决的办法.三 .证书过期1 . 错误图片提示2 . 错误文字描述 : Please verify that you
2016-07-20 21:56:29 703
原创 百度首页(HTML5)
一 效果图(分三部分)1 图一 : header(位于右上角)2 图二 : content(位于中间位置)3 图三 : footer(位于底部的中间)二 需要创建的文件三 HTML中设计的部分(先将主旨部分搭建好)<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>百度首页</title>
2016-05-26 02:27:49 13975
原创 swift版QQ音乐播放器(二)
一 完善部分的QQ音乐效果图二 需要完善点1 歌曲的切换和暂停播放2 歌曲当前播放时间和歌曲总时间的更新3 进度条的处理4 歌手头像处理5 头像动画效果6 歌词的进度显示8 完善细节三 添加歌曲展示页面中的动画效果1 代码书写位置 : 由于展示歌词的控制器的UITableViewController,那么我们可以使用代理方法.当用户拖动tableView的时候,会调用一个方法,在该方法中实现动画效果
2016-05-26 02:07:54 6649 5
原创 swift版QQ音乐播放器(一)
一 部分功能图(后面会完善)二 讲解思路1 项目目录结构搭建2 抽取工具类3 自定义cell4 分层思想5 业务逻辑三 项目目录搭建和相关配置1 采用搭建搭建结构思路 : MCV模式—-> 1.1 文件夹图片 :2 注意 一 : 当我们在创建目录的时候,直接将info.plist文件拖入到System的时候,编译的时候,会报错.原因是找不到info.plist文件.—-> 2.1 处理方式 : 直接
2016-05-18 02:39:21 7080 6
原创 集成百度地图SDK(swift)
一 集成百度地图最终的效果二 知识点1 信息检索2 地图大头针和导航SDK三 集成百度地图SDK1 百度搜索百度地图SDK2 注册账号(尽量)–>如果没有账号,最好去注册一个账号(我这里就不细说注册账号的步骤了)3 由于我们要做的是和百度地图相关的,所以直接按照下面图片点击即可(这里我将一一介绍ios中地图的相关开发)4 点击ios地图SDK里面是一些相关概述5 按照图片点击进入下面6 相关解释6
2016-05-12 02:07:37 9256 1
原创 细说地图(swift)
一 地图的基本使用1 地图需要依赖的框架 : MapKit2 框架基本作用 : 用于地图展示,例如大头针,路线、覆盖层展示等(着重界面展示)3 使用步骤 :—-> 3.1 导入头文件 : import MapKit(swift) ; #import —-> 3.2 MapKit有一个比较重要的UI控件 :MKMapView,专门用于地图显示4 设置地图显示类型—-> 4.1 地图的样式可以手动设置,
2016-05-09 01:03:43 4067 1
原创 地图与定位
一 地图和定位的简介1 主要应用场景:—-> 1.1 周边:找餐馆、找KTV、找电影院等等(大众点评, 美团网)—-> 1.2 导航:根据用户设定的起点和终点,进行路线规划,并指引用户如何到达(百度地图, 高德地图)二 实现该功能的必要条件1. 在iOS开发中,要想加入定位和地图两大功能,必须基于2个框架进行开发—-> 1.1 CoreLocation(该篇着重介绍)—-> 1.2 MapKit (
2016-05-08 03:05:04 4070
原创 ipad版简单美团界面功能实现(纯swift编写)
一 总体功能图一 : (ipad竖屏)二 总体功能图二 : (ipad横屏)三 讲解内容1 搭建美团界面(掌握)2 ios8.0之后的Popover的运用(重点)3 协议(掌握)4 通知(掌握)5 细节处理四 总体界面1 由总体的app界面效果,能看出来,一个UIViewController控制器作为UINavigationController的根控制器就能满足条件.五 导航条设置1 自定义导航条
2016-05-06 00:41:48 4820
原创 ipad版Qzone(纯swift编写)
一 app大致框架图 : (竖屏)二 app大致框架图 : (横屏)三 知识点1 自动布局(熟悉)2 协议(熟悉)3 横屏和竖屏的配置(掌握)4 细节处理四 布局登录界面和处理业逻辑1 自动布局效果图2 账号和密码相关设置—-> 2.1 账号—-> 2.2 密码3 创建一个登录控制器,用来处理登录模块相关业务逻辑4 该部分需要的相关属性(通过从storyboard中拖线得到)class XFJLog
2016-05-04 00:49:18 5077 1
原创 swift自定义转场动画(比较有难度)
一 转场效果图和采用转场方式1 转场效果图 :2 采用方式 (方法):—-> 2.1 自定义转场动画—-> 2.2 协议二 转场实现需要获取的东西1 获取转场前图片的frame2 设置一张临时imageView作为转场图片(图片并不是真实存在的)3 获取图片放大展示的frame三 转场图解四 转场动画思想1 通过在实现转场动画的类中定义协议方法,定义代理属性,明确谁可以提供需要的frame和imag
2016-05-01 00:42:21 8461
原创 美丽说demo(纯swift代码)
一 总体实现功能图(由于csdn上传的视频有规定大小,这里只简短的录了点,抱歉)1 图一 : 系统自带属性完成动画翻转2 图二 : 自定义动画实现翻转3 应用图标;启动图片;app名字…这些我就不一 一介绍了,你们都应该知道怎么配置吧.我这里是由于录的比较短,所以这部分内容省略了.这里说下几点注意.—-> 3.1 修改app名字可以在Bundle name中修改,也可以在Bundle display
2016-04-29 00:56:21 10682 2
原创 swift的基本语法
一 swift中的三大特性(重载;继承;多态)1 继承—-> 1.1 举个例子来说明 : 创建一个Person类,并且再创建一个老师和学生类,同时老师和学生类都继承Person类//创建一个类class Person { var name = "" var age = 0 //函数 func runing() { print("人在跑步")
2016-04-28 01:25:03 5370
原创 swift基本语法
一 可选类型知识点补充1 例一 : 强转并且制定类型let str = "23" //打印结果: "23"let age : Int? = Int(str) //打印结果 :23—-> 1.1 问题 : 该例子转化的结果为什么需要用可选类型来接收?—-> 1.2 解答 : 因为很有可能是转化不成功的,如果此时不用可选类型来接收的话,万一转化失败,那么该值就为空(nil),如果不选择可选类型来接收
2016-04-26 00:42:16 2761
原创 swift的基本语法
一 playground1 练习swift是在playground中编写—-> 1.1 导入框架(swift和oc的区别)//oc格式的导入框架#import <Foundation/Foundation.h>//swift格式导入框架import Foundationimport UIKit—-> 1.2 定义标识符—-> 注意:在swift中如果定义一个标识符,必须告诉编译器该标识符是变量
2016-04-24 02:33:31 4563
原创 基于UICollectionView的无限轮播器(封装)
一 无限轮播功能图二 封装的.h文件//// XFJInfiniteScrollView.h// 无限轮播器//// Created by xiaofeng on 16/4/21.// Copyright © 2016年 肖锋. All rights reserved.//#import <UIKit/UIKit.h>@class XFJInfiniteScrollView;@p
2016-04-23 02:08:49 874
原创 百思不得姐之图片处理(保存与下载)
一 功能图二 讲解思路1 回顾上一篇内容2 创建加载图片类(同时创建xib)3 点击图片查看大图4 点击查看大图(查看长图)5 model出展示图片的控制器6 保存图片7 封装根据网络状态展示不同的图片三 回顾上一篇内容1 上一篇内容讲到对整个cell的分析,通过创建一个类(XIB)来管理cell的顶部和尾部总共九个控件.然后创建三个不同的类(xib),各自负责自己的中间部分,然后根据服务器返回的帖
2016-04-20 01:59:20 5972 1
原创 百思不得姐之自定义cell的完善部分(九)
一 效果图和五个模块的分析1 效果图:2 五个模块分析—-> 2.1 模块图: 1>视频模块 2>声音模块 3> 图片模块 4> 段子模块 5> 包含前面四种类型的模块—-> 2.2 视频模块—-> 2.3 图片模块—-> 2.4 声音模块—-> 2.5 段子模块—-> 2.6 全部模块(包括上面这些都有)3 上一篇已经写了思路: 将顶部和底部用一个类来管理,其它部分交给对应的类来管理,根据从服务器
2016-04-16 01:47:39 4182
原创 百思不得姐之自定义cell(八)
一 运行图和解析顺序1 运行图:2 解析顺序:—-> 2.1 新增的刷新功能(点击各自标题刷新和点击tabBar中的按钮刷新对应的内容)—-> 2.2 论cell的2种做法—-> 2.3 自定义cell—-> 2.4 设置cell的数据—-> 2.5 计算cell的高度—-> 2.6 处理热门评论二 新增的数据刷新功能(接上一篇)1 新增原因: 目前市面上很多app都有一样的功能,就是当程序启动进入
2016-04-15 01:39:03 4631
原创 百思不得姐数据刷新数据部分(七)
一 刷新功能图和内部计算原理图1 刷新功能图:2 内部计算原理图二 解析步骤1 分析整个精华模块2 真实数据请求部分3 模型4 先添加尾部刷新控件5 再添加头部刷新控件6 处理刷新业务逻辑7 知识点补充三 分析模块1 从一个完整的app中可以看出,在精华模块中处于全部标题的部分数据包括了其它几部分的数据,内部有视频;声音;图片和段子,所以我们只需要将”全部”做好,就能很快的搞定其它模块了.四 真实数
2016-04-14 01:30:36 3601
原创 精度解析百思不得姐流行框架之精华版
0 框架效果图一 讲解顺序1 标题部分2 内容显示部分3 完善代码4 知识补充二 内容显示部分解析1 搭建: 通过观察该部分运行情况,支持上下滑动,同时也支持左右滑动—-> 1.1 结论: 父控件采用UIScrollView;子控件采用五个tableView2 分析一: 考虑内容显示的数据量比较大—-> 2.1 做法: tableView采用循环利用3 tableView的排列顺序: 设置scrol
2016-04-11 21:30:44 7135 1
原创 百思不得姐之"我的"模块功能(六)
一 功能图和知识点1 功能图部分:(由于网速的原因,网页部分没有加载出来,但是功能完好)2 该部分能学到的知识点概括:>1 UITableView的使用(简单)>2 UICollectionView的使用>3 请求数据>4 模型>5 自定义cell>6 清除缓存>7 细节处理二 确定搭建方式1 思考: 由整个app运行的效果图来看,是一个tableView,并且需要分组.界面的下半部分可以通过设置f
2016-04-11 00:27:01 4131 2
原创 百思不得姐之立即登录注册模块(五)
一 功能图和实现思路具体功能图:实现思路:—-> 1 关注控制器模块搭建(xib)—-> 2 登录和注册界面的总体模块数量(三个模块),可以用三个view来装各自的子控件—-> 2.2 先做上面的view—>中间的view—>底部的view(顺序自定)—-> 2.3 创建两个xib,用同一个类来管理两个xib—-> 2.4 将中间的view的宽度改为屏幕的两倍—-> 2.5 用拖线的方式修改约束,达
2016-04-09 02:24:40 6710
原创 百思不得姐之新帖(四)
一 功能成型图和该部分知识点1 功能图:2 学习的知识点:—-> 1> 自定义cell—-> 2> 图片的裁剪(两种方法)—-> 3> 分割线的设置(三种方法)—-> 4> 传统方法裁剪图片对app帧数的影响二 隐藏底部tabBar1 从整体app的功能看,当用户点击新帖左上角的按钮的时候,需要跳转页面到推荐标签中,但是需要隐藏底部的tabBar.2 设置全局的隐藏tabBar,直接在重写的push
2016-04-08 23:33:40 4933
原创 百思不得姐之广告界面(三)
一 概述和总体功能图1 广告界面的意思: 当用户点击启动一个app的时候,app并不会马上显示到主框架,而是先在屏幕中加载一张图片,而这张图片就称之为广告.由于图片是从服务器中请求的,所以每次启动app加载的广告图片都是不一样的.2 设置广告界面的原因: 反正用户启动app的时候都会花费一点时间才会跳转到主界面,于是商家就利用这段时间做出了这样一种广告界面,同时也提供用户选择,如果不想等就可以直接跳
2016-04-06 23:03:14 4838
原创 UICollectionView用法补充(照片轮播墙)
一 总体功能图和实现思路1 完整的功能图:2 实现功思路:1> 流水布局(实现UICollectionView必须要的条件)2> 自定义cell(实现UICollectionView必须要的条件)3> 自定义流水布局4> 如果想冲缓存池中取,那么必须采用注册的方法5> 照片缩放6> 照片移动后自动定位功能7> 一种新的封装思路二 流水布局1 包括以下部分:—> 1> cell的大小—> 2> 滚动方
2016-04-04 19:25:52 1755
原创 百思不得姐框架(二)
一 该部分框架效果图和实现思路框架二的效果图:实现思路:—- 1> 先完善tabBar(主要是自定义)—- 2> 再完善导航条—- 3> 其次完善屏幕侧滑(主要是全屏侧滑功能)二 抽取分类(设置到插件中)1 抽取分类的思想: 实现复用—-> 1.1 上部分代码中,我们需要设置tabBar中图片成未被渲染的格式,因此我们抽取了一个分类,用分类里面的方法实现了效果.—-> 分类代码://传入一张图片的名
2016-04-03 22:46:48 1892
原创 百思不得姐框架(一)
一 框架效果图和原理图1 框架的效果图:2 根据总体的app的效果图,我们总结了采用的方案是:—-> 采用主流的框架来搭建.搭建效果图:3 采用纯代码的形式来搭建框架(下面是设置窗口部分代码)—-> 代码块一:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)l
2016-04-02 14:22:41 1998
原创 Block的深入研究之Block的内存管理
一 非ARC中的Block内存管理1 先介绍内存的五大区:堆区;栈区;方法区;静态区(全局区);常量区2 非ARC环境:—-> 2.1 block在没有访问外部局部变量,存放在内存的全局区—-> 具体代码演示:- (void)viewDidLoad { [super viewDidLoad]; void(^block)() = ^{ }; NSLog(@"%@",block
2016-03-31 02:39:07 2107
原创 网易新闻部分框架
一 网易功能图二 需要解决的问题1> 搭建界面,设置标题2> 处理标题按钮点击事件,处理常见的bug3> 监听内容的滚动4> 滚动范围的判断5> 字体大小和颜色的渐变三 内容显示和标题显示搭建1 思路: 由总体app的效果,我们可以看出,标题和内容界面都是可以滚动的,而且标题还可以点击2 具体方案:采用两个UIScrollView来实现.3 显示内容的代码:#pragma mark - 创建控制器内
2016-03-29 22:02:41 2635 3
原创 父子控制器和MJ框架底层RunTime思想(二)
一 父子控制器控制器需要了解的知识:1 谁modal,谁dismiss—-> dismiss的原理:判断当前的通知其是否是modal出来的控制器,如果是那么就dismiss;判断父控制器是否是modal出来的控制器,如果是,那么就dismiss,如果不是,那么就逐级的往上找,一直判断,直到没有父控制器.2 拿到导航控制器的条件—–> // 只要是导航控制器的子控制器就能拿到导航控制器—–> // 判
2016-03-28 00:57:47 892
原创 字典转模型之KVC和MJExtension底层实现
一 快速生成@property1 当我们需要用模型去实现一个比较小的功能的时候,由于我们需要对plist文件进行转化成模型,那么很有可能我们拿到的plist文件中的属性很多,但是我们又因为只需要研究一个很小的功能,那么我们可以不需要将plist文件中的数据全部转化为模型数据,我们只需要提取其中的一部分用来实现模型就可以,那么我们怎么做呢?2 做法:展开某行,然后拷贝该行的item,然后将所有的ite
2016-03-27 01:13:05 2113
原创 ios9新特性学习方法和运行时(RunTime)解析
一 ios9的新特性1 如何学习一个新的API—–注意: 如何去研究新的API1.1 百度: iOS9API1.2 WWDC 和 查看苹果官方文档 (英文基础)1.3 用最新版本的xcode7创建一个项目,用老版本Xcode6打开2 掌握几大步骤 2.1 发现:有时候工作无缘无故,会发现新的东西,先保存起来2.2 研究东西:1.研究作用 2.研究书写格式2.3 测试:2.4 注意点:3 API的
2016-03-26 00:12:30 1128
原创 AFNetworking框架的使用和Cocoapods的安装使用
一 AFNetworking框架的使用AFN框架的内部结构:+ NSURLSession1 >AFURLSessionManager2 >AFHTTPSessionManager(封装了常用的 HTTP 方法)—-GET;POST;UIKit + AFNetworking 分类;NSProgress :利用KVO+ 半自动的序列化&反序列化的功能AFURLRequestSerialization :
2016-03-24 16:05:33 1413
原创 NSURLSession文件下载之文件句柄和输出流
一 NSURLSession文件下载方法一:采用block块回调的方式进行文件下载涉及到的知识点:1> 如何将下载的文件存入沙盒中?(直接看代码)2> 如何拼接文件保存路径?(直接看代码)block回调优缺点和应用范围://特点:能够直接把文件下载到沙盒中,我们需要做文件剪切处理(不会有内存飙升的问题)//缺点:我们无法监听文件的下载进度//应用:适用于小文件下载3 代码中包括文件下载好存入的沙
2016-03-24 02:07:47 739 1
原创 JSON和XML的复杂解析
一 JSON1 JSON的基本概念1 ) JSON是一种轻量级的数据格式,一般用于数据交互2 ) JSON的格式很像OC中的字典和数组3 ) 要想从JSON中挖掘具体数据,得对JSON进行解析二 JSON解析数据1 JSON转OC对象,解析(反序列化)2 相关代码 :#pragma mark - JSON转化为OC//反序列化- (void)jsonToOc{ //确定请求路径
2016-03-22 22:13:53 1896
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人