博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
状态栏、导航栏、导航控制器相关属性设置等注意事项
阅读量:5296 次
发布时间:2019-06-14

本文共 1966 字,大约阅读时间需要 6 分钟。

2015年07月08日

1、对于 IOS6 导航栏背景图片为 44 则@2x 得设计为 88

2、对于 IOS7 导航栏背景图片为 64 则@2x 得设计为 128 

 出现以上差异原因是由于IOS6里面,状态栏20是不包括在导航栏里面的,而 IOS7是包含在导航栏里面的。

 

3、 修改状态栏的文字颜色(全局修改)

  1. 首先先在 info.plist文件中,先添加一个View controller-based status bar appearance   的选项 并设置为 NO.

  2.这是可以使用

    // 设置状态栏的颜色

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

   这样就可以全局设置状态栏的颜色 , 放在代理里面比较合适

 

4、设置导航栏各种属性

// 设置导航栏的主题    UINavigationBar *navBar = [UINavigationBar appearance]; // 拿到导航栏的外观    [navBar setBackgroundImage:[UIImage imageNamed:@"NavBar64"] forBarMetrics:UIBarMetricsDefault];        [navBar setTintColor:[UIColor whiteColor]];        NSMutableDictionary *attrs = [NSMutableDictionary dictionary];    attrs[UITextAttributeTextColor] = [UIColor whiteColor];    attrs[UITextAttfile:///Users/dsw/Desktop/屏幕快照%202015-07-08%2020.48.02.pngributeTextShadowColor] = [UIColor blackColor];
[navBar setTitleTextAttributes:attrs]; // 设置导航栏属性,传入的是字典

5、得到设备的信息

 例如:[UIDevice currentDevice].systemVersion  取得设备的系统版本号

 

6、如果点击某个按钮跳转到另一个页面,需要修改系统原来的样式,则方法是:拦截 push 方法,在里面进行设置,即:自己定义一个导航控制器并继承自系统自带的导航控制器

,重写这个 push 方法,能拦截所有的 push 操作

- (void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{    // 注意:这里要再 super 之前调用,不然 super 执行之后,控制器已经跳转了,看不到隐藏 tabbar 的效果    viewController.hidesBottomBarWhenPushed = YES;    [super pushViewController:viewController animated:YES];}

延伸:只要系统的方法不够用,就可以利用这种方法(继承、重写),这样可以修改任何系统自带的功能。注意这种思想。

 

7、所有的控制器中,都由一个方法叫

+ (void)initialize

这个方法只在控制器加载的第一次会调用,想创建导航控制器的适合,就可以把一些全局设置放在这个方法里面,不用每次创建都重新设置一遍。

 

8、像 IOS6系统有时候程序启动的时候,需要隐藏状态栏,等到程序启动完毕之后在显示状态栏,这时候设置如下:

  1.,把里面的 Hide settus bar 勾选,这样在启动的时候状态栏就会消失

  2.等到程序启动完毕之后,在

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  中设置为:  application.statusBarHidden = NO;

 即可

 

9、程序图标加载完之后,默认会有一层发光效果,去掉方法:

中把划线的地方打钩就可以了

 

但是在 Xcode4中,需要在 plist 文件中添加Icon already includes gloss effects 并且把属性设置为 YES 这样来设置

 

转载于:https://www.cnblogs.com/cjt5132/p/4631352.html

你可能感兴趣的文章
php curl模拟登陆抓取数据
查看>>
locust压测时提示:locust HTTPError('400 Client Error:xxxxx')
查看>>
js获取网页屏幕可视区域高度
查看>>
项目中记录log4j记录日志
查看>>
apple开发者账号申请
查看>>
十款免费移动应用测试框架推荐
查看>>
for执行效率
查看>>
如何结合场景利用block进行回调
查看>>
二值变量间的相关性分析
查看>>
Intercept back button from soft keyboard(从软键盘拦截后退按钮)
查看>>
NumPy字节交换
查看>>
使用面向对象思想编写吃货联盟
查看>>
01-12文件上传
查看>>
工程师如何不被PM欺负
查看>>
apt-get出现无法定位安装包问题解决
查看>>
不理解,如果有高手看到了,请帮忙解答,谢谢啦~
查看>>
Spring 3 来创建 RESTful Web Services
查看>>
在iPhone上取消APP订阅
查看>>
日程管理测试计划和矩阵
查看>>
cdoj 92 Journey tarjan/lca 树上点对距离
查看>>