IOS 设置tips

1.设置屏幕常亮

[UIApplicationsharedApplication].idleTimerDisabled =YES;

2.设置屏幕亮度

float flag = 0.5;// 0.1到1.0;

[[UIScreenmainScreen] setBrightness:flag];

3.xcode路径配置

项目根目录$(SRCROOT)/:配置pch文件:$(SRCROOT)/projectname/PCH.pch

4.控制器旋转方向控制

-(BOOL)shouldAutorotate // 是否支持旋转

{

return NO;

}

- (UIInterfaceOrientationMask)supportedInterfaceOrientations //方向控制

{

return UIInterfaceOrientationMaskLandscape;

}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation // ios6以前控制方向

{

return toInterfaceOrientation == (UIInterfaceOrientationLandscapeLeft|UIInterfaceOrientationLandscapeRight);

}

5.自定义打印函数

#ifdef DEBUG

#define JKLog(fmt, ...) NSLog((fmt), ##__VA_ARGS__)

#else

#define JKLog(...)

#endif

6.添加导航栏之后设置约束

当控制器被包裹UINavigationController,之后在其中添加的视图会被导航栏遮挡,那么我们该如何做到不被遮挡呢?

第一,在控制器的添加其他视图之前,先添加一个UIScrollView,然后把其它view加到UIScrollView上面

UIScrollView*scrollView = [[UIScrollViewalloc] initWithFrame:kScreen_Bounds];

[self.view addSubview:scrollView];

UIButton*btn = [[UIButtonalloc] initWithFrame:(CGRect){0,0, kScreen_Width,64}];

[scrollView addSubview:btn];


原因分析:

UIScrollView本身没有任何移动,而是将UIScrollView中所有子视图下移64px,这个偏移的直接作用对象是UIScrollView的contentOffset,而实际的作用原理是改变其自身的坐标系统,也就是bounds。对于UIScrollView而言,UIScrollView.frame定义UIScrollView在其所在的坐标系统中的位置,而bounds是UIScrollView在自身坐标系统中的位置,frame定义UIScrollView在(0,0)位置,而同样的位置在UIScrollView自身的坐标系统中的坐标是(0, -64), 也就意味着NavigationBar正下方最左边位置为UIScrollView自身坐标系统的(0, 0)位置。所以,往UIScrollView中添加子视图,默认将NavigationBar下方左上角作为“原点”

第二, topLayoutGuide,也就是通过顶部约束的方式。

topLayoutGuide属性表示不希望被透明的状态栏或导航栏遮挡的内容范围的最高位置。这个属性的值是它的length属性的值(topLayoutGuide.length),这个值可能由当前的ViewController或这个ViewController所属的NavigationController或TabBarController决定,有如下情况:

一个独立的ViewController,不包含于任何其他的ViewController。如果状态栏可见,topLayoutGuide表示状态栏的底部,否则表示这个ViewController的上边缘。包含于其他ViewController的ViewController不对这个属性起决定作用,而是由容器ViewController决定这个属性的含义:

1.如果导航栏(Navigation Bar)可见,topLayoutGuide表示导航栏的底部。

2.如果状态栏可见,topLayoutGuide表示状态栏的底部。

3.如果都不可见,表示ViewController的上边缘。

第三,如果导航栏不透明,那么位于UINavigationController的栈中的UIViewController的view的frame将会更新为(0, 64, ScreenWidth, ScreenHeight-64).

如何来实现导航栏的不透明呢?

显示设置transcluent属性

1.self.navigationController.navigationBar.translucent =NO;

2.为navigationBar设置背景图片

[self.navigationController.navigationBar setBackgroundImage:[UIImageimageNamed:"image"] forBarMetrics:UIBarMetricsDefault];

7.设置导航栏

去掉导航栏下划线,如果想把下划线加回来 只需要把相应值设置为nil即可

    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];    [self.navigationController.navigationBar setShadowImage:[UIImage new]];

设置导航栏背景色:

self.navigationController.navigationBar.barTintColor = [UIColor whiteColor];

设置导航栏标题颜色

UIColor* color = [UIColor whiteColor];

 NSDictionary* dict=[NSDictionary dictionaryWithObject:color forKey:NSForegroundColorAttributeName];    self.navigationController.navigationBar.titleTextAttributes= dict;

设置导航栏完全透明,就像被隐藏起来了

    self.navigationController.navigationBar.translucent = YES;

    self.navigationController.navigationBar.barTintColor = [UIColor clearColor];

    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];

    [self.navigationController.navigationBar setShadowImage:[UIImage new]];

8.获取手机连接的wifi

倒入头文件:

<SystemConfiguration/CaptiveNetwork.h>

编写代码:

+(NSString*)getConnectedWifiName{

    NSString*wifiName =nil;

    NSArray *array = (NSArray *)CFBridgingRelease(CNCopySupportedInterfaces());

    for(NSString*string in array) {

        NSDictionary *info = (NSDictionary*)CFBridgingRelease(CNCopyCurrentNetworkInfo((__bridge CFStringRef)string));

        if(info && info.count) {

            wifiName  =  info[(NSString *)CFBridgingRelease(kCNNetworkInfoKeySSID )];

        }

    }

    return wifiName;

}

9.设置两个lable之间的约束

两个水平平行的lable 通过设置他们之间的间距来让两个lable 动态调整自己的宽度。设两个label从左到右为A和B,那么问题来了,当A和B的宽度都非常大,如何设置一个label显示完全,而第二个label显示省略号呢?

比如我们设置A显示完全,B会被A挤压而无法显示完全。这个时候可以通过设置A的抗压缩约束属性“Content Compression Resistance”来完成,如果我们需要将A的内容显示完,那么我们将A的content Compression Resistance 设置大一些:

[A setContentCompressionResistancePriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisHorizontal];

关于这个约束的具体解释可以参考这篇文章:https://www.jianshu.com/p/f83fa37fdd46


10.获取NSString 的字节长度

    uint8_t buffer[1024];

    memcpy(buffer, [str UTF8String],1024);

    int length = (int)(strlen((constchar*)buffer));


11.如何把导航栏设置为透明,并且去掉导航栏的下划线,这样导航栏里面的rootviewcontroller的view沾满整个屏幕

    self.navigationController.navigationBar.translucent = YES;

    self.navigationController.navigationBar.barTintColor = [UIColor clearColor];

    [self.navigationController.navigationBar setBackgroundImage:[[UIImage alloc] init] forBarPosition:UIBarPositionAny barMetrics:UIBarMetricsDefault];

    [self.navigationController.navigationBar setShadowImage:[UIImage new]];


12判断真机和模拟器

//0真机,1模拟器

#if TARGET_IPHONE_SIMULATOR

#define SIMULATOR1

#elif TARGET_OS_IPHONE

#define SIMULATOR0

#endif

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 196,264评论 5 462
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,549评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 143,389评论 0 325
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,616评论 1 267
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,461评论 5 358
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,351评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,776评论 3 387
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,414评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,722评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,760评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,537评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,381评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,787评论 3 300
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,030评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,304评论 1 252
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,734评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,943评论 2 336

推荐阅读更多精彩内容