自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 使用Storyboard的项目中,keyWindow的表现

情况一:Xcode8下创建一个project,在存在Main.storyboard并且AppDelegate的application: didFinishLaunchingWithOptions:没有使用代码创建window属性的情况下,我们在程序启动的委托中贴上这行代码:NSLog(@"%@", _window);运行之后,控制台输出:仔细发现,window实例变

2017-04-05 18:44:58 1138

原创 pyChar之SyntaxError: Non-ASCII character问题

使用pyChar运行# 这是一个注释符号出现了一个语法错误:解决方法:在文件的最开始处加入# -*- coding: UTF-8 -*-注意点:1、默认的python是用ASCII编码的,由于我们的文件涉及到中文,所以需要加上上面那句话,指明文件的编码方式可以用中文;2、UTF-8(8-bit Unicode Transformation Format)

2017-04-04 01:30:59 935

原创 python学习预备

1、windows命令行下文件的创建打开终端,输入md F:\我的文件夹,按下回车键,注意:md后面有一个空格2、windows命令行下文件的打开命令行下输入start F:\我的文件夹,按下回车键3、使用NodePad++创建python文件下载安装NodePad++(点击打开链接),打开NodePad++,新建一个文本,然后点击如图:由于我们的语言是中文

2017-04-02 22:30:01 737

原创 修改状态栏样式的两种方式

iOS的状态栏的样式有两种,样式一是UIStatusBarStyleDefault,这是一种暗色系,表现为状态栏上显示的字体、图标风格都是黑灰色的,这种风格主要使用在明亮的背景上;另一种是UIStatusBarStyleLightContent,它跟前面一种风格相反,主要用在暗色的背景上。我们要做的是如何在程序中自由的切换这两种风格。这里有两种方式:方式一:在Info.plist设

2017-03-30 21:11:48 4029

原创 隐藏状态栏的几种方式

一、隐藏状态栏方式一:iOS7以后,隐藏状态栏需要同时在Info.plist中设置Status bar is initially hidden、View controller-based status bar appearance这两个Key。它们对应的Value都是Boolean类型。如图:注意:使用这种方式设置之后,效果是全局的,默认情况下所有视图控制器都会隐藏状态

2017-03-27 01:10:39 4880

原创 装饰者模式

最近看了一篇关于装饰者模式的文章,深有体会,感觉在某种特定情况下通过装饰者模式来思考和组织代码真的是非常方便,下面我们通过一个例子来理解这里所说的“某种特定情况”。最近哥开了一家开心花甲粉的小吃店,不知道你去过没有,没有的话应该去尝试一下,挺好吃的。开心花甲粉是一家面条类的小吃店,主要的配料有:面(米线、河粉、桂林米粉...)、油、盐、酱油、水、辣椒、胡椒粉、鸡蛋、虾、花甲(一种壳类生

2017-03-24 18:40:57 667

原创 performSelector:target:argument:order:modes:和cancelPerformSelector:target:argument:的使用

今天在研究一个框架的时候,发现对方使用了cancelPerformSelector:target:argument:这个方法,遂打开文档研究了一下。performSelector:target:argument:order:modes:和cancelPerformSelector:target:argument:是NSRunLoop的一个叫NSOrderedPerform的Category

2017-03-23 02:51:13 1101

原创 SimplePing的使用

SimplePing是苹果封装好的关于Ping的类,研究wifi的时候顺带研究下这个类,关于什么是ping以及一些基本用法可以翻看我的博客。下面切入主题:SimplePing是一个封装低层级的BSD Sockets ping函数的类。使用这个类创建实例,设置委托然后调用 -start 方法开始在当前的run loop(运行循环)中。如果顺利的话你很快就会得到 -simplePi

2017-03-22 00:30:32 4520

原创 网络基本知识

必备的网络知识...

2017-03-21 23:27:37 514

原创 Ping的使用小结,后续会更新

2017-03-20 23:38:15 653

原创 inputAccessoryView的使用

inputAccessoryView属性存在于UITextView和UITextField两个控件类中,通过它我们可以很方便的在键盘上扩展我们想要的功能。先上代码:新建一个project然后运行下面这段代码UITextField *tf = [[UITextField alloc]initWithFrame:CGRectMake(20.0, 20.0, self.view.bounds.siz

2017-03-20 00:44:23 1637

翻译 苹果官方UIWindow

UIWindow对象为你的app的用户界面提供背景并且提供重要的事件处理行为。Windows本身没有任何明显的外观,但是它们对显示你的app的视图是至关重要的。每一个出现在屏幕上的视图都依附在Window上,而且app上的每一个Window都是相互独立的。你的app的事件首先沿着适当的Window对象,进而将这些事件转发到适当的视图。Windows对视图控制器实现取向变化和执行

2017-03-19 01:38:55 697

转载 Xcode8:"subsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0"的解决

自从使用Xcode8之后运行后控制台老是输出如下信息:subsystem: com.apple.UIKit, category: HIDEventFiltered, enable_level: 0, persist_level: 0, default_ttl: 0, info_ttl: 0, debug_ttl: 0, generate_symptoms: 0, enable_oversi

2017-03-18 18:33:00 1778

原创 CGAffineTransformMakeTranslation、CGAffineTransformMakeScale和CGAffineTransformMakeRotation的使用

CGAffineTransformMakeTranslation、CGAffineTransformMakeScale和CGAffineTransformMakeRotation可用于设定UIView的transform属性,分别控制视图的平移、缩放和旋转,这三种方式的变化始终以最初的状态进行变化。例如:新建一个工程,首先在ViewController.m中执行下面这段代码:UIV

2017-03-18 17:40:01 1043

转载 Objective-C(iOS)严格单例模式正确实现

转载当希望在一个应用程序中某个类的对象只能存在一个的时候就可以考虑用单例模式来实现,单例模式在C++中比较容易实现(只需把构造函数声明为private),而在Objective-C中对象可以通过NSObject的alloc来产生,所以需要编写一些额外的代码来确保对象的唯一性,考虑到现在编写iOS APP代码几乎都是ARC方式,且GCD也已经被用烂了,故本文给出一种利用GCD技术来实现严

2017-03-18 15:27:31 660

转载 Objective-C self关键字

转载在Objective-C中:1 self是一个指针,在每一个方法中都有一个self指针;2 self可以出现在所有的方法中(对象方法和类方法),不能在函数中;3 self指向调用者。(谁调用它就指向谁);4 可以使用self->成员变量 访问成员变量,可以使用[self 方法名]调用方法。

2017-03-18 15:25:20 417

转载 iOS系统消息

一、键盘1、UIKeyboardWillShowNotification-将要弹出键盘2、UIKeyboardDidShowNotification-显示键盘3、UIKeyboardWillHideNotification-将要隐藏键盘4、UIKeyboardDidHideNotification-键盘已经隐藏5、UIKeyboardWillChangeFrameNotific

2017-03-18 00:53:59 239

转载 视图回调

//当加入视图完成后调用  (void)didAddSubview:(UIView *)subview  //当视图移动完成后调用  (void)didMoveToSuperview  //当视图移动到新的WINDOW后调用  (void)didMoveToWindow  //在删除视图之后调用  (void)willRemoveSubview:(UIView *)su

2017-03-17 22:44:54 196

转载 让编译器对一些警告闭嘴

1.方法弃用告警[objc] view plain copy #pragma clang diagnostic push    #pragma clang diagnostic ignored "-Wdeprecated-declarations"       [TestFlight setDeviceIdentifier:[[U

2017-03-17 21:38:46 269

转载 OpenGl

2017-03-17 17:20:27 352

转载 关于UIView的autoresizingMask属性的研究

在 UIView 中有一个autoresizingMask的属性,它对应的是一个枚举的值(如下),属性的意思就是自动调整子控件与父控件中间的位置,宽高。123456789enum {   UIViewAutoresizingNone                 =

2017-03-16 20:25:43 174

转载 UIView的alpha、hidden和opaque属性之间的关系和区别

一、alpha液晶显示器是由一个个的像素点组成的,每个像素点都可以显示一个由RGBA颜色空间组成的一种色值。其中的A就表示透明度alpha,UIView中alpha是一个浮点值,取值范围0~1.0,表示从完全透明到完全不透明。当把alpha的值设置成0以后:1、当前的UIView和subview都会被隐藏,而不管subview的alpha值为多少。2、当前UIVie

2017-03-16 18:57:13 449

转载 iOS UI_APPEARANCE_SELECTOR

iOS后属性带UI_APPEARANCE_SELECTOR 可以统一设置全局作用例如:1>开关控件 @property(nullable, nonatomic, strong) UIColor *onTintColor NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR; 可以统一设置开关的onTintColor样式.不过开关控件的

2017-03-16 17:34:27 270

转载 NS_ASSUME_NONNULL_BEGIN,NS_ASSUME_NONNULL_END

Nonnull区域设置(Audited Regions)如果需要每个属性或每个方法都去指定nonnull和nullable,是一件非常繁琐的事。苹果为了减轻我们的工作量,专门提供了两个宏:NS_ASSUME_NONNULL_BEGIN和NS_ASSUME_NONNULL_END。在这两个宏之间的代码,所有简单指针对象都被假定为nonnull,因此我们只需要去指定那些nullable的指针。

2017-03-16 17:22:58 314

转载 iOS开发中的关键字const/static/extern

关键字const/static/extern的释义和用法 1、const这个单词翻译成中文是“常量”的意思。在程序中我们知道“常量”的值是不能变的,固定的。所以const关键字的作用就呼之欲出了:(1) const用来修饰右边的基本变量或指针变量(2) 被修饰的变量只读,不能被修改下面举个最简单的例子://声明一个int类型的变量a,变量初始化值为10,并且

2017-03-16 14:15:29 215

转载 c语言中const关键字详解

1、什么是const? 常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。(当然,我们可以偷梁换柱进行更新:) 2、为什么引入const? const 推出的初始目的,正是为了取代预编译指令,消除它的缺点,同时继承它的优点。 3、cons有什么主要的作用? (1)可以定义const常量,具有不可变性。 例如: const int M

2017-03-16 13:11:31 501

转载 在有storyboard的项目中,UIWindow是如何创建的?

为什么创建一个storyboard,没有看到创建uiwindow的过程?它其实是把创建UIWindow的过程给屏蔽起来了。可以把代理的UIWindow的属性的值打印出来NSLog(@“window=%p”,self.window);打印出来确实是有值的,说明确实创建了UIWindow.不仅创建了UIWindow,默认还创建了UIWindow对应的控制器,也可以打印进行查看。NSLog(@“

2017-03-16 00:09:08 522

转载 loadView、viewDidLoad及viewDidUnload的关系

标题中所说的3个方法,都是UIViewController的方法,跟UIViewController的view属性的生命周期息息相关。接下来我会一一阐述它们的作用以及它们之间的联系。loadView1.什么时候被调用?每次访问UIViewController的view(比如controller.view、self.view)而且view为nil,loadView方法就会被调用。

2017-03-15 23:17:26 245

转载 学习ios之路:objective-c--实例变量总结

http://www.jianshu.com/p/e3d566ab519e前言这本书已经看完了,但是现在有个感觉是:看了后面的知识,前面看过的知识就忘记了,并且自己对整个oc的知识体系没有一个系统的认识。因此计划在重新复习下。因为java和oc都是面向对象的语言,所以说到底它们都有面向对象的三大特性:封装,继承,多态。因此我觉得可以根据我对java的掌握,来帮助

2017-03-14 22:18:44 337

转载 iOS蓝牙编程指南 -- 核心蓝牙概述

http://www.jianshu.com/p/760f042a1d81

2017-03-13 14:16:19 369

转载 iOS 25个性能优化/内存优化常用方法

1. 用ARC管理内存ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。忘掉代码段结尾的release简直像记得吃饭一样简单。而ARC会自动在底层为你做这些工作。除了帮你避免内存泄露,ARC还可以帮你

2017-03-13 11:00:09 299

转载 iOS中NSLog输出格式大全

本文的内容是总结了一下iOS开发中NSLog输出格式大全,虽然比较基础,但有总结毕竟会各位正在学习iOS开发的朋友们一些小小的帮助。%@                   对象%d, %i               整数%u                    无符整形%f                     浮点/双字%x, %X        

2017-03-13 10:56:58 233

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除