`
feipigwang
  • 浏览: 744755 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
文章列表
1. <C陷阱与缺陷> int num[10]={0} ; 测试一下 num[0] 是否 等于 0[num] 。。。。。。 因为num是首地址 num+0 ==0+num 2. 其实C中只有一维数组 我们所说的 int a[3][4] 只是一个包含了三个元素 每个元素都是包含了四个整形值的一维数组 3.int num[10][10] ; int *p=num[0] ; 名为num的数组中 num[0]-num[9]表示的是 每个长度为10的一维数组 元素的首地址 4.(* (void (*)())0)() ; //眨眼一看很难看懂 其实这就是一个函 ...
委托三个步骤 1、声明委托 用Delegate 声明一个委托 类型 参数要和 被委托的方法一样 例如 Delegate Function a(byval x as string) as string 2、实例化委托 dim t as new a(AddressOf Function Name) 3.通过 t(参数) 或者 t.Invoke(参数调用委托) Module module1 Delegate Function a(ByVal x As Integer, ByVal y As Integer) As Integer '声明委托类型 委托可以使一个对象调用另一个 ...
cocoa 默认的cell风格修改起来挺灵活的 先提供处自定义代码 其实难点在于cell重用机制 供初学者参考 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString * showUserInfoCellIdentifier =@"ShowUserInfoCell"; UITableViewCell * cell = [tableView dequeueReusabl ...
VB.NET 也是完全面向对象的语言 mybase可以调用基类的 函数 mybase不是对象 而是一个 关键字 跟java中的 super类似 VB.NET所有的类都继承自 System.Object这个类 类的属性通过 Property 定义 通过 Set End Set 和Get End Get 过程可以对内部一个声明 private的私有变量 进行赋值或者 获取值 Overridable Public MustOverride Function aaa() 这是声明一个必须被覆盖的方法 就跟 C++中用 virtual void aaa()=0 ;一样这 ...
最近在Widget开发中,发现有一些PNG图片在E72手机上显示不正常,原本怀疑是手机的问题。但是我今天把图片重新用Photoshop保存了一下之后,显示就正常了。可能是美工在制作图片的时候没有考虑手机的一些特殊需求。 [编辑]基本概念 在Photoshop里面编辑图片的时候一般都是使用默认的真彩色模式(图像->模式->RGB颜色),保存的PSD文件也都是用这种模式,
Git 目录 [隐藏]
UIBarButtonItem*backBarButtonItem=[[UIBarButtonItemalloc]initWithTitle:@"back"
今天上班和同事讨论工程怎么组织的时候涉及到这个话题。 iOS开发上对delegate使用广泛。 记在这里,如果有新人Google到了,希望能有点帮助。 protocol和delegate完全不是一回事,放在一起说,只是因为我们经常在同一个头文件里看到这两个word。 protocol和java里interface的概念类似,是Objective-C语法的一部分。 定义protocol如下
注释技巧 在代码中加注释时,如果以 // TODO: 或 // FIXME: 或者 //!!!: 或 //???: 开头的话,此注释会出现在方法的下列列表里,方便日后跟踪。 利用Xcode4中的自定义代码片段,可以用一个快捷键插入一个预先定义好的注释片段 ...
EXC_BAD_ACCESS 这个异常通常是由之前的错误代码引起的,不会马上中断,而是导致其他正常运行的代码发生异常,所以比较难调试。常见的原因有: double release,重复释放了一个已经释放的指针,检查方法是对Executable设置运行时的 NSZombieEnabled 变量,这样,在释放一个已经失效的指针的时候,程序会自动中断。记得发现问题后把这个变量去掉。 字符串忘写了一个@,导致指向了错误的内存空间 [NSString stringWithFormat:] 方法少写了一个参数也会出此问题。 NSUnknownKeyException 运行时 ...
在华夏项目里遇到一个很奇怪的bug,在基类HXViewController里面定义的成员变量,在子类HPContainerViewController里无法直接引用。而且是模拟器环境能够编译运行,而在真机环境下编译报错,说变量没有定义。我怀疑这个问题是xcode或者编译器的bug,如果在xcode里把编译器从默认的gcc换成LLVM,则此部分代码能够编译通过,但是其他部分报错。目前还不清楚是什么引起的这个问题,因为同一个项目的其他代码里,子类是可以直接引用父类的变量的。 绕过这个问题的方法是,在子类里面,需要引用父类变量的地方,不是直接写ivar,而是写成 self->ivar ...
如果用到了animatesDrop,让图钉从天上掉下来,那么如果图钉没掉下来之前,把包含mapview的view controller释放了,那么可能会导致系统崩溃。因为图钉掉下来之后,mapview会调用包含自己的view controller中的方法。要解决这个问题,释放mapview的时候,应该先执行mapview.delegate = nil;
UITableViewController继承自UIViewController,但是initWithNibName:bundle:方法的行为是不一样的。普通的UIViewController如果nibName参数是nil,则自动载入和自己类名相同的xib文件。而UITableViewController遇到nibName为nil时,却不加载xib文件,而是 ...
在Interface Builder里,可以使用structs和spring方式设置一个view的autoresizing属性,可以理解为,上下左右的红线是4根柱子,中间的宽高是两根弹簧。 例如,如果左侧选中了红线,表示这个view的左侧间距是固定的。 如果中间选中了横的红线,说明这个view的宽度可以随superview自动调整。 要注意,这跟通过代码设置是不一样的!代码里,如果设置了view.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin的话,说明左侧的间距是可变的,相当于在Interface Buidler里去掉红线 ...
有时在debug版下一切正常,但是用release版在手机上就会崩溃。有可能跟编译器的优化选项有关。可以把Optimization Level设成NONE试一下。
Global site tag (gtag.js) - Google Analytics