2018-01-08

title: ios杂记

date: 2015-12-20  #写作时间

description: 逗指导的IOS笔记

categories: #文章分类

- ios

tags: #文章标签

- OC

- swift

- 杂记

- ios

toc: true # 生成目录

author: Creep

comments:

original:

permalink: #指定链接

---

# ios 针对状态栏操作

## 在ViewController中操作当前ViewController的状态栏

```swift

/**

隐藏状态栏

*/ 

override func prefersStatusBarHidden() -> Bool { 

return true; 

/**

设置状态栏风格

*/ 

override func preferredStatusBarStyle() -> UIStatusBarStyle { 

return UIStatusBarStyle.LightContent; 

```

## 在AppDelegate中设置状态栏

```swift

func setupWithStatusBar(application: UIApplication) { 

// 设置状态栏隐藏 

application.statusBarHidden = true; 

application.setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.Fade); 

// 设置状态栏高亮 

application.statusBarStyle = UIStatusBarStyle.LightContent; 

application.setStatusBarStyle(UIStatusBarStyle.LightContent, animated: true); 

```

## 通过plist文件配置状态栏属性

在**plist**里增加一行 **UIStatusBarStyle**(或者是“**Status bar style**”也可以),这里可以设置两个值,就是上面提到那两个

`UIStatusBarStyleDefault` 和 `UIStatusBarStyleLightContent`

这样在app启动的launch页显示的时候,statusBar的样式就是上面plist设置的风格。

# Swift - 文本输入框(UITextField)的用法

http://www.hangge.com/blog/cache/detail_530.html

# button 动画

====

http://www.cocoachina.com/industry/20140812/9360.html

# iOS实现渐变背景色的三种方法

====

为了定义渐变色, 至少有四个属性需要定义

```objectivec

@property (nonatomic) CGPoint inputPoint0;

@property (nonatomic) CGPoint inputPoint1;

@property (nonatomic) UIColor *inputColor0;

@property (nonatomic) UIColor *inputColor1;

```

两个 CGPoint 属性定义了渐变色开始和结束的地方。 They are defined in a unit coordinate space where (0, 0) at the top left and (1, 1) at the bottom right. The two UIColor properties define the start colour and the end colour.

## CAGradientLayer

We are not going to discuss the details of how to use CAGradientLayer. There is a good article talking about it: http://www.cnblogs.com/YouXianMing/p/3793913.html.

```objectivec

CAGradientLayer *layer = [CAGradientLayer new];

layer.colors = @[(__bridge id)_inputColor0.CGColor, (__bridge id)_inputColor1.CGColor];

layer.startPoint = _inputPoint0;

layer.endPoint = _inputPoint1;

layer.frame = self.bounds;         

[self.layeraddSublayer:layer];

```

## CGGradientRef

About Core Graphics and Core Image, please refer here, a very very good article:

http://www.techotopia.com/index.php/An_iOS_7_Graphics_Tutorial_using_Core_Graphics_and_Core_Image

Note that CAGradientLayer is using unit coordinate space while Core Graphics and Core Image are not. More Interestingly, Core Graphics’ coordinate space where (0, 0) starts at the top left is different from Core Image’s where (0, 0) starts at bottom left.

The following code is called in drawRect:.

```objectivec

CGContextRef context = UIGraphicsGetCurrentContext();

UIGraphicsPushContext(context);

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();

CGFloat locations[] = {0,1};

NSArray *colors = @[(__bridge id)_inputColor0.CGColor, (__bridge id)_inputColor1.CGColor];

CGGradientRef gradient = CGGradientCreateWithColors(colorSpace, (CFArrayRef) colors, locations);

CGColorSpaceRelease(colorSpace);

CGPoint startPoint = (CGPoint){rect.size.width * _inputPoint0.x, rect.size.height * _inputPoint0.y};

CGPoint endPoint = (CGPoint){rect.size.width * _inputPoint1.x, rect.size.height * _inputPoint1.y};

CGContextDrawLinearGradient(context, gradient, startPoint, endPoint, 0);

CGGradientRelease(gradient);

UIGraphicsPopContext();

```

## Core Image

The following code is called in drawRect:.

```objectivec

CIFilter *ciFilter = [CIFilter filterWithName:@"CILinearGradient"];

CIVector *vector0 = [CIVector vectorWithX:rect.size.width * _inputPoint0.x Y:rect.size.height * (1 - _inputPoint0.y)];

CIVector *vector1 = [CIVector vectorWithX:rect.size.width * _inputPoint1.x Y:rect.size.height * (1 - _inputPoint1.y)];

[ciFilter setValue:vector0 forKey:@"inputPoint0"];

[ciFilter setValue:vector1 forKey:@"inputPoint1"];

[ciFilter setValue:[CIColor colorWithCGColor:_inputColor0.CGColor] forKey:@"inputColor0"];

[ciFilter setValue:[CIColor colorWithCGColor:_inputColor1.CGColor] forKey:@"inputColor1"];

CIImage *ciImage = ciFilter.outputImage;

CIContext *con = [CIContext contextWithOptions:nil];

CGImageRef resultCGImage = [con createCGImage:ciImage

fromRect:rect];

UIImage *resultUIImage = [UIImage imageWithCGImage:resultCGImage];

CGImageRelease(resultCGImage);

[resultUIImage drawInRect:rect];

```

Sample code can be found here: https://github.com/RungeZhai/LGGradientBackgroundView

# mac系统如何显示和隐藏文件

====

## Mac OS X操作系统下

隐藏文件是否显示有很多种设置方法,最简单的要算在`Mac终端`输入命令。显示/隐藏Mac隐藏文件命令如下(注意其中的空格并且区分大小写)。

## 显示Mac隐藏文件的命令:

```

defaults write com.apple.finder AppleShowAllFiles -bool true

```

or

```

defaults write com.apple.finder AppleShowAllFiles  YES

```

## 隐藏Mac隐藏文件的命令:

```

defaults write com.apple.finder AppleShowAllFiles -bool false

```

or

```

defaults write com.apple.finder AppleShowAllFiles  NO

```

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

推荐阅读更多精彩内容

  • 游戏逻辑框架 和上一个游戏不同,这次用中文编写代码,可以让我这个初学者,更好的理解框架逻辑的组成方式。首先在Gam...
    Ericoool阅读 360评论 0 0
  • Why personality and not skill makes you a great employee ...
    LR0811阅读 317评论 0 0
  • 关于爱的名言: (1) Love the giver more than the gift. 比起所赠之物,更爱赠...
    哪一站那一战阅读 327评论 0 1
  • HashMap真牛逼,每次看源码,if (size++ > threshold) 都为这块的判断怀疑人生,siz...
    SMSM阅读 1,699评论 2 0
  • 什么是Check Check是C语言的一个单元测试框架。它提供一个小巧的单元测试接口。测试案例运行在各自独立的地址...
    craneyuan阅读 9,794评论 6 10