美文网首页
记录免忘

记录免忘

作者: 十月末的故事 | 来源:发表于2018-03-13 17:35 被阅读2次
  1. NSLog 相关
1. 打印地址
NSString *str = @"abc";
NSLog(@"指针地址:%x, 对象地址:%p", &str, str);

2. 替换系统 NSLog
#if DEBUG
#define NSLog(format, ...) printf("\n[%s] %s [第%d行] %s\n", __TIME__, __FUNCTION__, __LINE__, [[NSString stringWithFormat:format, ## __VA_ARGS__] UTF8String]);
#else
#define NSLog(...) {} 
#endif
其他打印占位符 占位符
  1. Build Phases
1. 设置某个类是否启用 ARC,禁用 ARC 后,被禁用的类将变成 MRC
TARGETS --> Build Phases --> Compile Sources 中找到需要修改的类文件,双击后填写
启用 ARC:-fobjc-arc
禁用 ARC:-fno-objc-arc
  1. 宏判断
1. 判断是模拟器还是真机
#if TARGET_IPHONE_SIMULATOR
    NSLog(@"iphone simulator");
#else TARGET_OS_IPHONE
    NSLog(@"iphone");
#endif

2.  判断是iPhone还是iPad
#define CURRENTDEVICE_IPAD   UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad

3. 设备类型
#if __LP64__
代码只在64位机上运行
#else
代码在32位机上运行
#endif
  1. 判断系统版本
// 判断系统版本是否 11.0
if (@available(iOS 11.0, *))
{
     // your code
}
  1. 消除 pods 所有 warnings

pods -> project -> build settings 中搜 inhibit all warnings,将其值设置为 YES 即可

  1. Xib, Storyboard 和纯代码编写的优缺点:
Xib 和 Storyboard 可以直观的看到页面效果,开发时方便快捷,后期或别人接手时也方便快速了解页面功能,缺点是编译速度慢,版本控制容易冲突且不易解决冲突。
纯代码反之,编译快,控制更灵活,但无法方便的查看页面效果,后期或别人接手时理解困难。
  1. UIView 的 alpha、hidden、clearColor、opaque 效果和区别
1. alpha 是控制透明度,值范围 [0, 1],当 alpha = 0 时,视图及其子视图将完全透明不可见,也不再接受响应,有动画效果
2. hidden 是控制隐藏,hidden = YES 时,效果等同于 alpha = 0,无动画效果
3. clearColor 是透明色,视图设置为 clearColor 时,视图透明不可见,但子视图可见,视图可接受响应
4. opaque 意为不透明,当 opaque = YES 时,GPU 渲染将不考虑颜色叠加,只显示顶层视图的颜色。所以当 opaque = YES 时,最好视图 alpha = 1,若 alpha < 1 时可能会出现异常显示,同样,alpha < 1 时,可将 opaque 设置为 NO。
  1. 状态栏 UIStatusBar 的隐藏和显示
在 ViewController 中如下设置

- (BOOL)prefersStatusBarHidden
{
    return statusBarHidden;
}

- (UIStatusBarAnimation)preferredStatusBarUpdateAnimation
{
    return UIStatusBarAnimationSlide;
}

在需要刷新的时候调用 [self setNeedsStatusBarAppearanceUpdate];

后续继续更新...

相关文章

  • 记录免忘

    NSLog 相关 Build Phases 宏判断 判断系统版本 消除 pods 所有 warnings 在 po...

  • 雪夜呓语

    我只记得:我一生渴望被人收藏好,妥善安放,细心保存。免我惊,免我苦,免我四下流离,免我无枝可依!却忘...

  • 自嘲--码农写文

    余为攻城狮,常写电脑诗。 得闲来写文,免忘自为人。

  • SSH免密码登录设置

    在Hadoop等应用,通常要设置SSH免密码登录来管理集群。这里记录一下Linux配置免密码登录设置。 安装SSH...

  • 相思

    识之半面君, 误入相思门。 短忆留相思, 空之免苦意。 细思难自忘, 宁愿入我门。

  • 科二模拟又挂了

    生活真的是需要记录。不记录,肯定要忘。一忘,就觉得忘掉的时光白活了。所以我要再接再厉,将自己的生命记录下去,以供日...

  • 远程管理命令

    自学整理记录,大神见笑 目录 shutdown ifconfig ping ssh scp 免密码登录 配置远程计...

  • 归路(吴登平)

    昨日天气沉暗,旁!时分归路, 却忘家路,其错入塘外! 幸?伯父过遇,将起拉住! 免越昨兮之难。

  • 添加Docker用户组

    安装完 docker 之后,经常要免 sudo 调用 docker 命令,留个记录: 1.创建 docker 用户...

  • Linux免密登录的原理

    本文主要记录linux免密登录的原理 前提 有两台机器A和B A需要免密登录机器B(反之则按照下面步骤从B操作到A...

网友评论

      本文标题:记录免忘

      本文链接:https://www.haomeiwen.com/subject/oyazfftx.html