- 博客(21)
- 资源 (1)
- 收藏
- 关注
转载 c++智能指针的实现
本文主要讨论C++程序设计的一种常用技术——智能指针(smart pointer),主要内容包括引用计数(reference count)和句柄类(handle class)。如果文中有错误或遗漏之处,敬请指出,谢谢! 作者: tyc611, 2007-02-01 当类中有指针成员时,一般有两种方式来管理指针成员:一是采用值型的方式管理,每个类对象都保留一份指针指
2014-09-12 15:20:24
459
原创 CCTextureCache和CCSpriteFrameCache
void CCSpriteFrameCache::addSpriteFramesWithFile(const char* plist, const char* textureFileName){ CCAssert(textureFileName, "texture name should not be null"); CCTexture2D *texture = CCTextur
2014-06-19 16:53:52
739
原创 IOS自动布局
使用相对布局之后,可以增加开发的速度,之前一直使用frame的方式,代码混乱。使用相对布局之后,之前以设置frame的方式来取设置view将没有效果(除了controller的view)同设置frame类似的时,在设置view的约束的时候,也需要制定他的大小和坐标,否则,编辑器会提示警告。以实际操作来演示下如何使用相对布局,新建一个storyboard,放置一个viewControll
2014-04-22 21:14:57
865
原创 转换ipa中得图片
之前在mac中查看ipa中包内容,包种的资源一目了然,后来拿着window本去解压,发现里边大多数图片都是黑的,原来这些图片都是被xcode优化过的,搜索了一下,一个找了个好用的工具,分享一下,在windows下下载安装python点击打开链接然后去https://gist.github.com/3609051/download#下载py文件,放到要转换的png的文件目录下,在do
2014-04-03 17:26:57
613
原创 在centos下配置gitLab
配置了gitLab之后首先是nginx提示505,就是资源找不到之类,但是直接通过端口3000去访问gitLab是可以,看来这就是nginx的问题,之后给配置nginx root权限解决又不用户下不存在.ssh文件,我就直接mkdir了一个,然后ssh key方式就无法登陆了,切换到其他用户,完全没问题,后来对比了一下两个用户.ssh文件的属性,发现直接mkdir的权限太高了,之后google
2014-04-03 16:50:12
658
转载 asp.net中得Global HttpAppliction
Global.asax 和 HttpApplication 类[转]Global.asax 和 HttpApplication 类 从HttpApplication派生的Global 类有很多用处,包括管理应用程序状态和请求状态Visual Studio.NET 创建的global.asax文件为每个web 应用程序生成一个从HttpApp
2014-04-03 16:25:03
551
原创 IOS开发中图片加载类库的使用 EGOImageLoader,SDWebImage
在ios开发中常用到一些第三方的工具,在使用图片加载的时候,考虑使用EGOImageLoader还是使用SDWebImage,经过一番测试和查看核心代码之后,发现虽然SDWebImage在实现和使用上麻烦一点,但性能还是比EGOImageLoader强的,不过对于初学这,可以看下EGOImageLoader实现一个自己的图片加载工具,EGOImageLoader在加载本地缓存图片的时候是直接去
2014-03-25 18:47:18
674
原创 android图片加载之OOM
1,使用BitmapFactory.decodeFile(filename,options);一定要使用options2,使用options中得inSampleSize缩放,设置inPurgeable为true(具体的解释google)。经过这样的处理之后,可以避免oom错误3,无论怎样,在一个项目中,oom给用户带来了很差的体验,所以,最终,oom错误是需要捕获的,但是,记着OOM一个E
2014-03-25 18:30:34
527
原创 在IOS对UIImage进行拉伸
在iOS5之后,可以使用:resizableImageCapInsets:(UIEdgeInsets)Insets。拉伸图片,类似android中得.9png其中Insets这个参数的格式是(top,left,bottom,right),使用UIEdgeInsetsMake创建,从上、左、下、右将图片围绕一个矩形局域,只有在区域中部分才会被拉伸,而框外面的部分则不会改变。比如(15,5,1
2014-03-25 18:01:21
884
原创 cocos2d-x内存管理
cocos2d使用的是和objectc类似的内存管理方法oc中自动释放内存的阶段是在一个loop,线程,事件结束之后cocos2d自动释放内存是在一帧结束之后,其实游戏本身就是一个无线的循环,一帧也可以理解为一个loop,就是整个程序走了一遍所以对于全局的变量,需要使用对其引用计数加一,比如一个全局的数组,使用 CCArray *array = CCArray::create();方法
2014-03-20 19:30:59
557
原创 UITabBarController
Unbalanced calls to begin/end appearance transitions for 在使用TabBarViewController的时候遇到这个异常,原因是tabbar的个数大于4个的时候,剩余的controller会被加入到moreNavigationControllers中,手动异常了moreNavigationController的导航栏之后,这个navigat
2014-03-20 18:54:15
613
原创 对于标量
__block 可以在block内部改变外部标量没有__block, 标量会在block复制一份,外部标量不会被改变对于 指针,对象 __block 不复制指针, 但是会retain指针,容易发生循环引用问题__weak 不复制指针, 也不retain指针, 避免发生循环引用问题需要使用这个修饰符__strong 复制指针,retain指针__block 标示要引用的O
2014-03-20 18:51:53
502
原创 nil NSNull NULL,用着。。。
nil发一个不存在的消息不报错,但是NSNull是一个对象,发不存在的消息会crashnil指的是一个oc类型的指针 a null pointer to an oc object;Nil A null pointer to an oc classNULL,A null pointer to anything else ,is for c style memory pointersN
2014-03-20 18:49:51
767
原创 Objective-c内存管理
1:内存管理方式 引用计数2:关键字 release retain retainCount首先来理解oc中的属性声明@property (nonatomic,retain)UIButton *button;这样就生成了一个getter和setter方法,setter的方法大概如下假设是一个MyClass中的一个方法 -(void)setButton:(UIButt
2014-03-20 18:37:53
775
原创 Android的事件传递机制
整体来说有关事件传递的方法有:事件从父级这个方法用来分发TouchEvent1:public boolean dispatchTouchEvent(MotionEvent ev) dispatchTouchEvent之后,这个方法用来拦截TouchEvent,判断是否需要拦截这个事件(返回true不再向下传递,比如ScrollView的滑动)
2014-03-20 18:09:17
454
转载 Android Framework
Android Framework 层主要分为三个部分:服务端,客户端和Linux驱动服务端:服务端主要包含两个重要的类,分别是WindowManagerService(Wms)和ActivityManagerService(Ams)这两个服务端进程Wms作用是为所有的应用程序分配窗口,并管理这些窗口,包括分配窗口大小调节各窗口的叠放次序,隐藏或显示窗口。Ams的作用是管理所有应用程序
2014-03-20 17:50:09
659
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人