记录一些小技巧

  1. svn 提交@2x.png @3x.png, 直接在图片全称后面加个@,然后再用命令行 执行 svn add [email protected]@ 就可以成功添加了。之后再调用svn commit -m提交即可。(因为svn 是通过@来截断字符串的)
  2. 若要从工程中删掉一些文件,记得一定要通过xcode去删,否则编译之后一堆的warning,还比较难处理。
  3. 有时候通过给subview 设置一个tag,方便管理,但是需要注意的是,tag值不能太小,0~100是苹果自己保留的,设置过小时会导致通过viewWithTag获取的不是自己想要的tag; 另外如果有多个view对应同一个tag时,通常采用深度遍历优先的算法,返回第一个tag和给定Tag相等的subview,那么可能返回的也不是你想要的,需要注意。
    例如,可在添加此tag时删除已有该tag的view,避免出错
    UIView * subViewUsingTheTag = [self viewWithTag:tag];
    while (subViewUsingTheTag != nil) {
    [subViewUsingTheTag removeFromSuperview];
    subViewUsingTheTag = [self viewWithTag:tag];
    }
    view.tag = tag;
  4. 最近写tableview时,想要通过点击cell弹出一个模态窗,代码如下:
    [self presentViewController:self.detailController animated:NO completion:^{}];
    但是总感觉页面卡顿半天才弹出来,需要在主线程触发一个事件才能立刻弹出,于是改成强制加入主线程队列解决问题。
    dispatch_async(dispatch_get_main_queue(), ^{
    [self presentViewController:self.detailController animated:NO completion:^{}];
    });

你可能感兴趣的:(iOS学习)