- 博客(94)
- 资源 (19)
- 问答 (1)
- 收藏
- 关注
原创 谈一谈拦截导航控制器返回事件(下)——AOP
前文链接:谈一谈拦截导航控制器返回事件(上)——OPP我们开发一个项目都是慢慢完善的,设想一个很坏的情况:你所有的controller都没有基类,都是互相独立的。现在出现一个新的需求,当用户点击导航栏的返回按钮时,需要询问用户是否退出。那么这种情况下我们只能在当前controller自定义一个返回按钮,给它添加点击事件,最后我们在controller增加了几行代码,实现了此功能,如果其它contro
2017-06-21 16:59:52
2676
原创 谈一谈拦截导航控制器返回事件(上)——OPP
iOS中,UINavigationController 是一个很好用的导航栏控制器,它可以很方便的控制controller 的显示,弹出。操作原理是一个栈,先进后出。 导航栏点击返回时, 会把刚压入栈的controller 弹出,这些已经封装好,不用我们做什么。但有时我们会有一个场景:比如我们填写一个表单时,用户点击了返回按钮,我们这时应该弹出提示,确定退出,但用户确定后,才pop 出这个co
2017-06-19 10:43:37
3837
原创 ios 3D引擎 SceneKit 开发(8) --SCNShape 的使用
博客写的没有系统性,真是想到那写到那。 前天有小伙伴问: 如何将一个2D的图案转化成具有深度的3D模型其实很简单,用SCNShape 就可以实现了,看到SCNShape,我们就会立刻想到CAShape,没错,我们可以用贝塞尔曲线画一个2D 图案,然后在设定一个Depth 就可以了,非常简单,用法如下: SCNShape *customShape = [SCNShape shapeWithP
2016-10-23 15:10:10
7742
3
原创 ios 3D引擎 SceneKit 开发(7) --基础的碰撞检测
好久没有写博客了,变懒了,最近工作不多,那就继续坚持写博客。 今天我们来说说SceneKit框架的 Basic Collision Detection,基础碰撞检测。2D中的碰撞检查大家都能能理解,涉及到的数学知识并不复杂。但在3D中碰撞检测要涉及到更复杂的数学知识了,很多人数学功底不好的同学就犯难了,我也是。幸好SceneKit框架 提供了方便的方法去判断碰撞检测。要想让SCNNode 模拟碰
2016-10-21 16:13:21
6557
原创 文章标题
git本地新建一个分支后,必须要做远程分支关联。如果没有关联, git 会在下面的操作中提示你显示的添加关联。关联目的是如果在本地分支下操作: git pull, git push ,不需要指定在命令行指定远程的分支. 推送到远程分支后, 你只要没有显示指定, git pull 的时候,就会提示你。git branch --set-upstream-to=origin/release/2.1.0
2016-08-31 10:19:38
2488
原创 git 回滚到之前某一commit
git loggit reset –hard 8ff24a6803173208f3e606e32dfcf82db9ac84d8
2016-08-15 16:54:12
343840
22
原创 git 添加忽略文件(.gitignore)
用作记录touch .gitignore #创建gitignore隱藏文件 vim .gitignore #编辑文件,加入指定文件 对于每一级工作目录,创建一个.gitignore文件,向该文件中添加要忽略的文件或目录。但在创建并编辑这个文件之前,一定要保证要忽略的文件没有添加到git索引中。使用命令git rm –cached filename将要忽略的文件从索引
2016-08-15 14:05:20
10241
转载 git merge 跟 git merge -no-ff
根据这张图片可以看出 git merge –no-ff 可以保存你之前的分支历史。能够更好的查看 merge历史,以及branch 状态。 git merge 则不会显示 feature,只保留单条分支记录。–no-ff指的是强行关闭fast-forward方式。fast-forward方式就是当条件允许的时候,git直接把HEAD指针指向合并分支的头,完成合并。属于“快进方式”,不过这种情况如
2016-08-08 14:04:40
6704
转载 iOS中assign,copy,retain之间的区别以及weak和strong的区别
@property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Reference Counting)。 copy: 建立一个索引计数为1的对象,然后释放旧对象 retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 weak 和strong的区
2016-05-15 17:36:48
3315
原创 ios 3D引擎 SceneKit 开发(6) --SCNAction
前面关于旋转的两篇我们利用CABasicAnimation来实现旋转动画,其实在SceneKit中,有一种更为简单的方法去实现一些基础动画,那就是SCNAction,它的执行对象是SCNNode。一个简单的例子:SCNAction *shipMoveAction = [SCNAction moveTo:SCNVector3Make(10,10,5) duration:4];[shipRotation
2016-05-09 14:53:42
6867
原创 ios 3D引擎 SceneKit 开发(5) --关于旋转的几点问题(2)
如果还没看前一篇,可以移驾看看:ios 3D引擎 SceneKit 开发(4) –关于旋转的几点问题(1)上一篇我们用CABasicAnimation 来模拟了太阳-地球-月球的天体运动。其中月球绕太阳运动和月球绕地球运动都可以看做一个点绕另一个点作圆周运动。(当然现实中是椭圆运动,有远地点,近地点,这里我们看作圆周运动)一个点绕另一个点作圆周运动,是不是很熟悉。对,就是我们之前学习的数学知识,这里
2016-05-07 15:31:14
6634
原创 ios 3D引擎 SceneKit 开发(4) --关于旋转的几点问题(1)
旋转模型是经常遇到了,我们之前用CABasicAnimation 可以旋转一个view,其实它也可以旋转一个SCNNode。首先我们要明白一个概念,每个SCNNode 都有自身的三维坐标系,用CABasicAnimation就是让SCNNode绕自身的三维坐标轴旋转,所以要特别注意是坐标轴,不是这个SCNNode的几何中心。一般SceneKit 的自带的几个几何体的坐标系原点(0,0,0)就是这个它
2016-05-06 22:55:27
13157
原创 关于使用UIPanGestureRecognizer手势touchesBegan不调用的问题
最近使用UIPanGestureRecognizer手势时遇到一个问题,就是想获取起始的触摸点,但UIPanGestureRecognizer手势需要滑动一点距离时,才会触发,那样获取的起始点不太准确。然后就想到了- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event这个方法,但这个方法还是有个缺点,就是开始触摸时,需要稍微停
2016-04-30 22:27:51
6663
翻译 Core Animation 显式动画属性值探究(完善中......)
原文: Hit testing animating layers我有一个疑问,当我们看到一个平滑的动画执行期间,它的动画属性值是立马变成我们设置的那个值还是根本就没有变? 当你想知道在动画执行期间,这个作用于渲染层的值是如何变化的时候,你会这么做?剧透:答案是非常简单的,可以移驾去看一下 presentation layer 的属性值我们来做一个小实验你可以写一些可用于与模型层和呈现层交互的de
2016-04-06 14:58:47
2636
原创 AsyncLoadLocalImage ios 加载本地高清大图
http://s1.pan.bdstatic.com/box-static/file-widget-1-cdn/image/util/img/img_loading_eb5a811.gif如果你的iOS项目中需要加载项目中或者沙盒中的多张高清大图时,希望这个框架能助你一臂之力。类似于SDWebImage ,异步加载。两种缓存机制:内存和硬盘。git地址:https://github.com/pzht
2016-03-31 15:40:25
3719
原创 git pod 常用命令
pod lib lint –verbosepod trunk push AsyncLoadLocalImage.podspec –verbosepod setuppod install –verbose –no-repo-update
2016-03-31 14:23:29
4144
原创 ios 富文本编辑器
github地址WordPress-Editor-iOS-Extension 是从 WordPress-Editor-iOS 的扩展,他支持“从相册中选择”,“拍照”,“插入网络图片”三种方式。并允许用户可以定制编辑器的工具栏。The expansion of “WordPress-Editor-iOS-Extension” from “WordPress-Editor-iOS”, his sup
2016-03-23 16:35:14
11038
原创 ios 3D引擎 SceneKit 开发(3) --使用3dmax导出DAE文件
hello ,大家好,我是Roc.Tian,最近一直在研究苹果自家的3D 引擎 SceneKit ,适当写写博客,总结一下,与大家分享一下,也希望跟大家交流,共同进步。这其实是建模人员该了解的问题,但我们了解一下也无妨。 DAE文件格式是3D交互文件格式,一般用于多个图形程序之间交换数字数据,Autodesk专有并在COLLADA(COLLAborative Design Activity)基础
2016-02-20 15:47:16
18177
4
原创 ios 3D引擎 SceneKit 开发(2) --贴图篇
hello ,大家好,我是Roc.Tian,最近一直在研究苹果自家的3D 引擎 SceneKit ,适当写写博客,总结一下,与大家分享一下,也希望跟大家交流,共同进步。今天简单说一下 SceneKit 给材质贴图。1,最简单的一种方法,直接打开dae 或者 scn 文件直接设置 如上图,这个dae 文件中只有一个几何体,几何体中只有一个材质球,然后设置材质球的diffuse 属性就可以了。
2015-12-26 21:50:31
15513
原创 ios 3D引擎 SceneKit 开发(1) --起始篇
hello ,大家好,我是Roc.Tian,最近一直在研究苹果自家的3D 引擎 SceneKit ,适当写写博客,总结一下,与大家分享一下,也希望跟大家交流,共同进步。SceneKit 是一个OC 框架,开始之前,先熟悉一下SceneKit 的三维坐标系:在开始开发之前,一定要了解下面这几个非常重要的类类 / 协议描述
2015-12-15 14:09:49
25667
原创 CocoaPods安装问题解决
点击打开链接http://blog.youkuaiyun.com/yangkunlll/article/details/39526295http://www.tuicool.com/articles/NnYb2un
2015-10-28 16:02:18
871
原创 [UIActivityIndicatorView _applicationDidEnterBackground:]: message sent to deallocated instance
[UIActivityIndicatorView _applicationDidEnterBackground:]: message sent to deallocated instance
2015-07-09 11:55:44
2886
原创 iOS shareSDK 实现第三方登陆参考资料
http://blog.youkuaiyun.com/daleiwang/article/details/34081231http://wiki.mob.com/%E5%AE%9E%E7%8E%B0%E7%AC%AC%E4%B8%89%E6%96%B9%E7%94%A8%E6%88%B7%E7%99%BB%E5%BD%95/http://wenku.baidu.co
2015-03-01 17:22:41
5481
原创 IOS 多个UIImageView 加载高清大图时内存管理
当我们在某一个View 多个UIImageView,且UIImageView都显示的是高清大图,就有可能出现内存警告的问题。如果第一次进入这个view,没有发生内存警告,当再次进入这个view,如果上一次的内存没有及时释放,这一次次的累加,便可导致内存崩溃。1,UIImage 加载图片的方式。 如果是本地图片,尽量不要使用 [UIImage imageNamed:ni
2014-08-25 10:02:13
18069
原创 ios bug
Warning: Attempt to present on whose view is not in the window hierarchy!2014-06-11 14:57:01.058 gaia[655:60b] webView:didFailLoadWithError - The operation couldn’t be completed. (NSURLErrorDomain
2014-06-11 14:59:05
4740
原创 phoneGap开发环境搭建(android)
1. 首先安装nodejs (http://nodejs.org/)2. 然后在命令行输入 npm 回车如果出现下图:则表示安装成功 3. 安装 npm install -g cordova4. 安装JDK 这里最麻烦的就是环境变量的配置了 配置环境变量:右击“我的电脑”-->"高级"-->"环境变量"1)在系统变量
2014-05-08 17:38:54
5734
原创 HybridApp简介以及开发平台的选择
原文网址:http://mi.chinabyte.com/378/12600378.shtmlHybrid App在过去的两年中已经成为移动界的核心话题,但是作为一名Web开发者来说要如何站在移动互联网的浪潮之巅呢?是选择学习原生开发,研究Java、Object-C、C#等语言,还是选择继续使用网页开发,容忍HTML5功能的局限性?就在开发者左右为难的情况下Hybrid App作为一个折中
2014-05-08 17:34:40
16200
原创 App 上架
iOS开发者申请发布证书-图文详解http://my.oschina.net/joanfen/blog/133624iOS 发布应用程序到App Storehttp://my.oschina.net/joanfen/blog/133642
2014-02-27 10:32:29
1786
原创 未能加载文件或程序集“Newtonsoft.Json.Net35”或它的某一个依赖项。参数错误。 (异常来自 HRESULT:0x8007
今天上午公司突然断了几次电,运行项目是就发生了异常:未能加载文件或程序集“Newtonsoft.Json.Net35”或它的某一个依赖项。参数错误。 (异常来自 HRESULT:0x80070057 (E_INVALIDARG)) 。解决办法:在系统盘里搜索Temporary ASP.NET Files 这个文件夹,把所有名字为Temporary ASP.NET Files 的文件夹全部删
2014-02-14 13:19:31
4356
原创 .NET操作Excel
如果你新建一个项目的话,首先要添加Microsoft.Office.Core 与Microsoft.Office.Interop.Exce这两个应用,然后就能很方便的操作了,示例代码(只实现了简单的读写): private Excel._Application excelApp;private Workbook wbclass;excelApp = new Excel.Applica
2014-01-14 15:49:33
1837
原创 C# 隐式类型
隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在foreach一个集合的时候, 也要为遍历的集合的元素,指定变量的类型 隐式类型的出现, 程序员就不用再做这个工作了。 (2)使用方法
2014-01-09 14:55:17
1883
原创 knockoutjs visible
以前在项目中开发时,利用knockoutjs中的visible属性来隐藏,显示div。通过给visible绑定一个表达式,发现没有效果,以为只能绑定bool值。这几天开发又遇到这个问题,所以决定一探究竟。分别写了两种绑定方式的: Show first bool值绑定 表达式绑定 va
2013-10-15 23:01:41
2988
原创 2011-10-21 09:29 jquery attr()方法 添加,修改,获取对象的属性值
jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回 undefined )2.
2013-09-14 09:05:09
5807
原创 解决IE下document.referrer 拒绝访问的问题
用document.referrer回到来源页(也可以称作上一页)时非常方面,我们不用知道来源页复杂的url,而且document.referrer回到来源页时会重新加载,而不是上一次的状态,所以说非常的方便。但是在IE中用javascript做跳转,比如用window.location.href=“”; 跳转到的页面无法取到浏览器请求的HTTP referrer,IE浏览器会报脚本错误
2013-09-09 10:52:12
5541
原创 解决IE下jquery ajax无法获得最新数据的问题(IE缓存)
今天修改一个bug,利用ajax查询数据,在谷歌浏览器下可以获取到最新数据,而在IE中获得是旧数据,无法获得最新的数据,经查资料,才发现时IE缓存在作怪。发现此ajax请求用的get方式,每次请求的URL一模一样,IE浏览器有个特殊的地方,如果每次请求的URL一样时,就会拿出缓存中已有的数据显示在页面上,并不会再次去查询数据库,所以每次显示的都是旧数据。解决办法:那就有思路了,我们可以
2013-08-29 10:12:37
3372
原创 iOS 本地化应用程序(NSLocalizedString)
App本地化的需要不用讲大家也都明白,本文将介绍一种简单的方法来实现字符串的本地化。在不考虑本地化的情况下,我们如果在代码中给一个Button定义title,一般会这样写:btn.titleLable.text = @"Example Button"; 也许我们已经写了很长的代码才考虑到本地化的问题,大可不必头疼,这时候,我们要做的是把代码从头扫一遍,然
2013-08-16 16:52:03
4722
java实现各种数据统计图(柱形图,饼图,折线图)
2012-05-24
Android情侣短信软件
2011-11-21
IOS 如何将一个图片变形
2016-02-18
TA创建的收藏夹 TA关注的收藏夹
TA关注的人