- 博客(285)
- 资源 (8)
- 收藏
- 关注
转载 [Objective-C]关联(objc_setAssociatedObject、objc_getAssociatedObject、objc_removeAssociatedObjects)
关联 关联是指把两个对象相互关联起来,使得其中的一个对象作为另外一个对象的一部分。 关联特性只有在Mac OS X V10.6以及以后的版本上才是可用的。在类的定义之外为类增加额外的存储空间 使用关联,我们可以不用修改类的定义而为其对象增加存储空间。这在我们无法访问到类的源码的时候或者是考虑到二进制兼容性的时候是非常有用。 关联是基于关键字的,因
2013-07-11 11:54:34
78932
6
转载 删除目录所有的.svn文件夹
建立一个文本文件,名称随意,后缀为.reg,内容如下:?Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]@="Delete SVN Folders" [HKE
2013-06-27 19:24:58
1496
转载 [Android] ListView中getView的原理+如何在ListView中放置多个item
ListView 和 Adapter 的基础工作原理:ListView 针对List中每个item,要求 adapter “给我一个视图” (getView)。一个新的视图被返回并显示如果我们有上亿个项目要显示怎么办?为每个项目创建一个新视图?NO!这不可能!实际上Android为你缓存了视图。Android中有个叫做Recycler的构件,下图是他的工作原理:
2013-06-07 10:00:18
942
转载 Android 启动模拟器是出现“Failed to allocate memory: 8”错误提示的原因及解决办法
某天,Android 启动模拟器是出现“Failed to allocate memory: 8”错误,模拟器无法启动,如下图:原因:设置了不正确AVD显示屏模式,4.0版默认的模式为WVGA800,改成WXGA720后导致不支持。解决办法:编辑这个AVD,将Skin -> Build in的参数改回默认参数。欢迎转载并说明转自:http://blog.csdn.net/aminf
2013-05-29 09:23:47
899
转载 Java中的Serializable浅谈
对象的串行化(Serialization) 一、串行化的概念和目的1.什么是串行化 对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要时再将对象恢复。我们把对象的这种能记录自己的状态以便将来再生的能力。叫作对象的持续性(persistence)。对象通过写出描述自己状态的数值来记录自己 ,这个过程叫对象的串行
2013-05-24 15:21:48
819
转载 Java泛型中通配符的几点理解
置换原则 结合Java本身的一些面向对象的特性,我们很容易理解这么一个置换原则: 一个指定类型的变量可以被赋值为该类型的任何子类;一个指定某种类型参数的方法可以通过传入该类型的子类来进行调用。总的来说,就是说我们使用的任何类型变量都可以用该类型的子类型来替换。泛型中一种错误的继承关系 在泛型的编程中,我们考虑到子类型关系的时候,容易把一种关系给弄混淆,并错误的采用置换原则
2013-05-24 10:47:30
848
转载 C#中的析构函数
引言 在企业应用开发世界,性能,灵活性和安全性是最重要的。我作为一个VC++程序员开始我的职业生涯,并且在一个晴朗的早晨,我被转到了Web开发部。像每个C++程序员一样,我也很失落。我想每个像Tom,Dick甚至Harry能用HTML编程。然而,不久我就发现真正的挑战是生产高性能的,灵活的可靠的应用程序。综上所述,Web环境松耦合的,不分国界的本质将使你永远神往。 为了制作高性
2013-05-23 11:16:33
816
转载 CodeSign error: Certificate identity 'iPhone Developer:xxx appears more than once in the keychain.
当重新下载安装了.cer文件,更新了profile 后,再编译iphone项目时,发现下面的错误:CodeSign error: Certificate identity 'iPhone Developer:xxx appears more than once in the keychain'error: Certificate identity 'iPhone Developer
2013-05-03 11:45:12
1713
转载 图解SQL的Join
对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams 解释了SQL的Join。我觉得清楚易懂,转过来。假设我们有两张表。
2013-02-19 10:23:30
764
转载 [iOS]提交iPhone app程序遇到newsstand错误
To include newsstand features, the info.plist must include the uinewsstandapp=true.参看http://stackoverflow.com/questions/6977357/xcode-gave-strange-newsstand-error-when-trying-to-submit-an-app这
2013-02-01 11:50:48
1642
转载 [iOS]GCD小结
0. Brief Introduction GCD,全称Grand Central Dispath,是苹果开发的一种支持并行操作的机制。它的主要部件是一个FIFO队列和一个线程池,前者用来添加任务,后者用来执行任务。 GCD中的FIFO队列称为dispatch queue,它可以保证先进来的任务先得到执行(但不保证一定先执行结束)。 通过与线程池的配
2012-11-26 14:57:51
20337
3
转载 iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
介绍:Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。它首次发布在Mac OS X 10.6 ,iOS 4及以上也可用。设计:GCD的工作原理是:让程序平行排队的特定任务,根据可用的处理资源,安排他们在任何可用的处理器核心上执行任务。
2012-11-26 14:52:38
3122
原创 [C]对数组名取地址与数组名本身的区别
对数组名取地址打印出来的结果与直接打印数组名得到的结果是同一个地址,如:C/C++ code?12345678910#include int main(void){ int a[] = { 1, 2, 3, 4, 5, 6,
2012-11-21 21:19:49
1555
转载 UIScrollView的作用原理,实现scrollView中touch事件作用子视图
我们知道当多个视图进行叠加的时候,touch事件是作用到最上面的视图上,但是如果父视图是UIScrollView,如果默认,可能touch子视图会造成UIScrollView的滚动。UIScrollView滚动的原因,可以看UIScrollView 原理。我在这里简单的描述一下,UIScrollView的工作原理,当手指touch的时候,UIScrollView会拦截Event,会
2012-11-19 11:57:48
9812
1
转载 Java与C++的区别之构造函数中的多态
我们有个一个类A,在构造函数中调用自己的方法f。现在有一个类B,继承A,并覆盖了方法f。那么构造函数B调用时先执行A的构造函数,此时在A的构造函数中的f是指A::f, 还是B::f呢?在C++中,对于函数调用的多态主要是通过虚表实现,在构造函数完成前,虚表未实现,所以此时不会有多态特性,故调用的仍然是A::f。但是在Java中表现则不是的,会调用到子类的方法,即B::f。在这一
2012-10-19 15:47:33
925
转载 C++、Java和C#语言在处理“虚拟私有方法”上的差异
运行时动态绑定被调过程的“虚拟方法”(virtual method)机制是实现多态的关键技术。C++、Java和C#(按出生年月排列,上同,下同)作为三种主流的支持对面向对象的程序设计语言,自然都提供了这种动态的方法绑定机制,在这个问题上三兄弟没有谁是含糊的。但当“虚拟”(virtual)和“私有”(private)碰在一起时,这几种语言在处理上却有所不同,本文的故事就是从一段小程序说起的:我
2012-10-18 10:47:22
879
转载 C++中using的作用
1.在当前文件中引入命名空间这是我们最熟悉的用法,例如:using namespace std;2.在子类中使用 using 声明引入基类成员名称(参见C++ primer)在private或者protected继承时,基类成员的访问级别在派生类中更受限:class Base {public:std::size_t size() const { return n;
2012-10-17 11:22:37
1021
转载 [iOS]Xcode4/iOS5调试UncaughtException崩溃First throw call stack不打印方法名的解决方案
最近连接iOS5.0.1真机调试的的时候,发现UncaughtException导致crash之后*** First throw call stack:后面没有打印可读的调用堆栈,以前崩溃之后会显示详细的调用的方法名等信息,但是现在都是一堆内存地址0x…..0x…..。我起初也不知道怎么回事,之前似乎也没碰到过。谷歌了一下,看到了一篇文章(http://stackoverflow.com/
2012-08-22 11:07:20
7204
转载 当程序崩溃的时候怎么办 Part-2
原文地址:http://www.raywenderlich.com/10209/my-app-crashed-now-what-part-2欢迎回到当程序崩溃的时候怎么办 教程!在这个教程的第一部分,我们介绍了SIGABRT和EXC_BAD_ACCESS错误,并且举例说明了一些使用xcode调试器(Xcode debugger)和异常断点(Exception Breakpoints
2012-08-22 11:05:36
9311
转载 当程序崩溃的时候怎么办 part-1
有这样一种情形:当我们正在快乐的致力于我们的app时,并且什么看都是无比顺利,但是突然,坑爹啊,它崩溃了。(悲伤地音乐响起)我们需要做的第一件事就是:不要惊慌。修复崩溃不是很困难的。假如你崩溃了,并且胡乱的改些东西,而且还在不停的念着咒语希望bug神奇的自动消失,你大多数情况下都会使情况更麻烦。相反的,你需要知道一些系统的方法,并且学习怎么找到崩溃和他的原因。
2012-08-22 11:01:38
2509
转载 [iOS]让你的应用支持新iPad的Retina显示屏
上周起大家伙纷纷开始上手第三代iPad了。由于新iPad采用了Retina显示屏,分辨率较上一代iPad增加了一倍(译者:长宽增加一倍,像素是上一代的四倍)。为了支持新增的这些个像素,iOS开发者需要考虑升级自己的iPad应用,我在下文列举了一些必须注意的事项。一、应用图片标准iOS控件里的图片资源,苹果已经做了相应的升级,我们需要操心的是应用自己的图片资源。就像当初为了支持iPhon
2012-08-20 15:56:04
2908
转载 自定义UITableViewCell的背景
UITableViewCell是一个很常用的View,通常我们都是直接使用它。- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *cellIdentifier = @"CellIden
2012-08-06 12:32:33
1592
转载 iOS通过Quartz画矩形、文字、线
首先,获取上下文CGContextRef context =UIGraphicsGetCurrentContext();画无框矩形//设置矩形填充颜色:红色 CGContextSetRGBFillColor(context, 1.0, 0.0, 0.0, 1.0); //填充矩形 CGContextFillRect(context, rec
2012-07-08 13:42:48
12585
1
转载 NSRunloop 的用法
今天突然才之间才意识到NSTimer这样的运行方式,是在多线程中实现的循环还是在主线程中去实现的呢。当然不可能是在主线程中的while那么简单,那样什么都干不了,简单看了下NSTimer是以同步方式运行的。时间到了,消息发出后,ontimer的函数是在主线程上调用的。我们会经常看到这样的代码:- (IBAction)start:(id)sender {
2012-07-08 13:35:41
2156
转载 [iOS] iPad与iPhone上各种标准控件的大小
iPhone和iPad下各种常见控件的宽度和标准是一样的,所以这里就用iPhone说明。Sizes of iPhone UI ElementsElementSize (in points)Window (including status bar)320 x 480 ptsStatus Bar
2012-05-25 21:38:26
4048
转载 [iOS] Xcode 4 Missing file 警告的解决办法
These solutions are way too difficult. The problem is that you have removed the project from filesystem but SVN still thinks they are there. Detaching project from SVN will work, the same for removi
2012-05-23 16:05:19
8379
原创 [iOS]设置Xcode 4同时支持旧版iOS设备(armv6),并兼容iPhone和iPad
Xcode 4的Architectures设置默认只有armv7,也就是新的iOS设备,包括iPhone 3GS、iPhone 4、iPhone 4s、iPad、iPad 2等,而iPhone、iPhone 3G、iPod Touch、iPod Touch 2属于armv6架构。一、使兼容armv6和armv7的步骤如下:PROJECT -> Info -> iOS Deplo
2012-05-19 19:03:05
7692
转载 分离线程
讲到分离线程,先得从僵尸进程讲起(抱歉,确实不知道线程是否有僵尸一说)。 关于僵尸进程:一般情况下进程终止的时候,和它相关的系统资源也并不是主动释放的,而是进入一种通常称为“僵尸”(zombie)的状态。它所占有的资源一直被系统保留,直到它的父进程(如果它直接的父进程先于它去世,那么它将被init进程所收养,这个时候init就是它的父进程)显式地调用wait系列函数为其“收尸”。为了让父进
2012-05-17 20:43:34
1012
1
原创 [iOS] performSelector:withObject:afterDelay:调用没有作用的问题及解决方法
这个问题找了将近一天,baidu、google了很久,竟然没有人遇到同样问题?performSelector:withObject:afterDelay:和[NSTimer timerWithTimeInterval:invocation:repeats:]都存在此问题:调用后,延迟后(延迟0也一样)没有进入指定的@selecter()中。反复验证发现,这种现象出现在子线程中,主线
2012-05-15 16:08:48
13118
3
原创 [iOS]使用NSProxy实现消息转发机制,模拟多重继承
Objective-C不支持多重继承,但是我们可以使用NSProxy的消息转发机制,来转发可由其它类的对象处理的任务,达成同样的目的。Xcode的Documentation中有示例(搜索ForwardInvocation,在Sample Code类别中),如下:/* File: main.m Abstract: This
2012-05-09 09:45:52
7523
原创 [iOS]使用NSProxy实现代理模式
// MyProxy.h#import@interface MyProxy :NSProxy { NSObject *object;}- (id)transformToObject:(NSObject *)anObject;@end// MyProxy.m#import"MyProxy.h"@impl
2012-05-09 09:29:03
13019
3
转载 [iOS] Xcode 4透過Ad-Hoc發佈App給其它裝置測試使用
先前曾分享過,透過憑證的設定,將Xcode開發好的App,同步到開發者行動裝置中,來進行除錯與測試,但由於一般的開發者,很難手邊同時有iPhone 3Gs、iPod Touch、iPhone 4、4s...等,這時就得靠平常的生活外交了,但總不可能把朋友手機一一的借來測試,所以這時候最好的辦法,就是將寫好的App發佈出來,安裝到各式不同的裝置上來進行測試,看是否都能正常的運作,這時就得透過Ad-H
2012-05-07 14:25:03
12846
转载 [ios] xcode 4.2 创建 adhoc 发布应用测试方法
AdHoc实际主要就是你可以发布版本,通过签名Profile指定这个版本能在哪些设备上运行(不超过100个)。这样你可以把版本直接发给你的测试人员,不需要经过AppStore。起到Beta测试的作用。 第一步:取得目标机器的UDID(Unique Device Identifier )。 启动iTune,连接设备。选取设备,在Summary页面,可以看到Serial Number(序列
2012-05-07 11:56:17
3180
原创 [iOS] Xcode 3打包Ad Hoc版本及安装
打包:1. https://developer.apple.com/ 制作Ad Hoc签名2. Xcode中选择正确的签名3. 编译Ad Hoc版本4. 右键Products/*.app,选择Show in Finder,复制编译生成的文件(无后缀名的那个)5. 新建PayLoad文件夹,文件夹中粘贴刚刚复制的文件6. PayLoad同级目录拷贝过来要在iTunes中显示的
2012-05-07 11:51:44
3265
转载 ubuntu配置更新修改IP地址
1、ubuntu系统修改IP地址:sudo gedit /etc/network/interfacesauto eth0 iface eth0 inet staticaddress 172.9.4.51netmask 255.255.255.0gateway 172.9.4.12、ubuntu系统修改DNS: sudo gedit /etc/resolv.con
2012-04-11 20:03:01
2080
转载 [iOS] NSInvocation简单使用
在 iOS中可以直接调用 某个对象的消息 方式有2中一种是performSelector:withObject:再一种就是NSInvocation第一种方式比较简单,能完成简单的调用。但是对于>2个的参数或者有返回值的处理,那就需要做些额外工作才能搞定。那么在这种情况下,我们就可以使用NSInvocation来进行这些相对复杂的操作NSInvocation可以处理参数、返回值。会j
2012-04-11 13:16:40
4486
转载 [iOS] performSelectorOnMainThread支持多个参数
iOS 的 NSObject对象提供了一种在不同线程中执行其方法的机制。最常见的是需要在主线程即UI线程中去执行一些方法performSelectOnMainThread:withObject:waitUntilDone:但是这个默认的方法只支持一个参数。performSelector:withObject:withObject:这个不是在主程线中运行的…只能依靠cat
2012-04-11 13:11:41
8022
转载 [iOS] iphone检测耳机插入/拔出
开发过程中录音和播放这块碰到了一些问题,麻烦的主要有三个:检测是否有声音输入设备当有多个声音输出设备时,指定声音输出设备检测耳机的插入和拔出第一个问题,对于iTouch和iPad等本身不带麦克风的设备,需要检查是否插入了带录音功能的耳机;对于iphone,由于其本身已近自带麦克风,所以相对容易。第二个问题,当在本身带有外放的设备上插入耳机等输出设备时,就出现了多个输出设
2012-04-09 20:48:54
13125
1
转载 [iOS]/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1
使用xcode编译出错Command /Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/g++-4.2 failed with exit code 1在网上找了好久,解释有各种原因,但是大多都是说重定义了变量,或者静态变量重名。若搜索这个工程找不到重定义的地方,则很有可能和我个人遇到的问题一样,个人总结了一下一下
2012-04-03 20:13:03
2992
转载 [iOS] Code Sign error: Provisioning profile XXXX can't be found
如果你更新了profile,再编译iphone项目,发现下面的错误,那你无论如何clean也不会成功,那真是让人恼火阿 这时候,先copy上面那行出错信息,然后关闭这个项目,打开finder到你的项目文件xxxx.xcodeproj上面按鼠标右键,选择Show Package Contents菜单,在新打开的finder的,找到project.pbxproj,使用一个文
2012-04-03 14:25:09
1093
C#利用托管C++为媒介调用标准C++类的示例代码
2010-06-04
vs2005根据当前日期或指定版本号修改exe或dll版本号
2010-01-07
图片中人脸的自动识别与定位源代码
2009-08-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅