那些年踩过的坑-Objective-C

欢迎访问我的博客muhlenXi,该文章出自我的博客。

版权声明:本文为muhlenXi原创文章,转载请注明出处,未经允许不得转载.

导语:

在APP的开发过程中,随着开发时间的增长,踩过的坑越来越多,虽然当时比较苦恼,但是当解决这个问题的时候,成就感也不会小,为了给自己留个纪念和避免以后的小伙伴和我掉进同一个坑里,特此记录我开发中踩过的坑,吃一堑,长一智,每次都有收获,其实也挺好的,人生哪有一帆风顺的。

点击阅读全文来了解我踩过了哪些坑吧。

导航栏不透明搞得鬼

  • 导航栏默认是半透明的!
  • 对于同样的frame,导航栏不透明会导致UI控件向下偏移64个点!

在ViewController中的View中添加一个红色的View

UIView * redView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
redView.backgroundColor = [UIColor redColor];
[self.view addSubview:redView];

当我们设置导航栏为不透明

self.navigationController.navigationBar.translucent = NO;

效果图如图所示,

那些年踩过的坑-Objective-C_第1张图片
导航栏透明不透明对比图

导航栏隐藏那些事儿

对于导航栏隐藏,以下两行代码都可以做到,但是要注意区别!

self.navigationController.navigationBarHidden = YES;

这行代码的作用是让整个navigationController都隐藏!

self.navigationController.navigationBar.hidden = YES;

这行代码的作用是仅仅隐藏navigationController中的一个属性,这个属性是navigationBar!

区别如下:

当我们使用navigationController``Push一个新的ViewController时,在ViewController界面的左边,从左往右滑时,会Pop到上一个ViewController!

  • 1、当我们使用第一行代码隐藏导航栏时,不影响这个功能,仍然可以通过手势返回到上一个ViewController中。
  • 2、当我们使用第二行代码隐藏导航栏时,则无法通过手势返回到上一个ViewCOntroller中。

关于 Bundle ID

切记使用反向域名名称风格字符串,它不能包含星号()。*

com.domainname.appname    //像这样的

tabbar的高度不一致

同一App在不同的iPhone设备上的tabbar的高度不一致,有可能是加载页Launcher Image的配置不全导致的。

一般LauncherImage需要适配iOS 7.0 and LateriOS 7.0 and Later !,以下是这两项分别所需图片的规格大小:

iOS 7.0 and Later

2x        对应的图片 640 x 960 pixels
Retina 4  对应的图片 640 x 1136 pixels

iOS 8.0 and Later

Retina HD 5.5  对应的图片 1242 x 2208 pixels
Retina HD 4.7  对应的图片 750 x 1334 pixels

注意:如果只配置其中一项,则会导致tabbar的高度不一致,笔者的亲身经历过这样诡异的事情。

后续会一直更新的!感谢大家的阅读,如有问题可以留言给我!

你可能感兴趣的:(那些年踩过的坑-Objective-C)