随笔分类 - UI高级
摘要:1、要开始使用AutoLayout,请先设置要约束的view的translatesAutoresizingMaskIntoConstraints属性为NO。在xib或者sb中勾选Use Auto Layout,那么所有在xib或者sb中出现的view都已经默认将translatesAutoresiz...
阅读全文
摘要:之前写过runtime的一些东西,这次通过runtime获取一些苹果官方不想让你拿到的东西,比如,状态栏内部的控件属性。本文将通过runtime带你一步步拿到状态栏中显示网络状态的控件,然后通过监测该控件的属性来获取当前精确网络状态,比如2G/3G/4G/WIFI。首先,我们需要拿到状态栏,然后通过runtime去探讨状态栏内部的组成结构。1、导入运行时头文件#import 2、编写运行时代码,获取到当前应用程序的所有成员变量 1 #import "ViewController.h" 2 #import 3 4 @interface ViewController () 5
阅读全文
摘要:当你需要和别人分享代码,但又不想让别人看到你内部的实现时就需要制作静态库,通常用于第三方SDK下面就分享一下制作静态库(.a)的过程:1、打开Xcode,新建workspace2、随便给workspace取个名字3、在workspace新建工程4、选择静态库5、点击下一步6、删除系统自动帮你生成的文件7、引入需要制作成静态库的代码文件8、添加build headers9、点击后出出现一个可以添加头文件的选项10、添加要暴露给外界的头文件11、调整头文件的位置,拖到public12、选择设备(默认为真机),设备决定了该静态库用于真机还是模拟器,然后command+B经过了以上12步,就完成了一个
阅读全文
摘要:Xcode 项目中我们可以使用 ARC 和非 ARC 的混合模式。如果你的项目使用的非 ARC 模式,则为 ARC 模式的代码文件加入 -fobjc-arc 标签。如果你的项目使用的是 ARC 模式,则为非 ARC 模式的代码文件加入 -fno-objc-arc 标签。添加标签的方法:打开:你的target -> Build Phases -> Compile Sources.双击对应的 *.m 文件在弹出窗口中输入上面提到的标签 -fobjc-arc / -fno-objc-arc点击 done 保存
阅读全文
摘要:概要: 4个触摸事件、6个手势识别、响应者链条1、4个触摸事件1> 触摸事件主要是针对视图的,包括- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event;- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event;- (void)touchesCancelled:(NSSet *)touches withEvent:(
阅读全文
摘要:在ios开发中,有时候我们需要频繁播放某种提示声音,比如微博刷新提示音、QQ消息提示音等,对于这些短小且需要频繁播放的音频,最好将其加入到系统声音(system sound)里。注意:需要播放的音频文件不能超过30秒必须是IMA/ADPCM格式[in linear PCM or IMA4(IMA/ADPCM) format]必须是.caf .aif .wav文件1、自定义系统声音 // 要播放的音频文件地址 NSString *urlPath = [[NSBundle mainBundle] pathForResource:@"end_refreshing" ofType:
阅读全文
摘要:1、 监控摇一摇动作 1> 让当前视图控制器成为第一响应者 // 必须先让当前视图控制器成为第一响应者才能响应动作时间 [self becomeFirstResponder]; 2> 实现响应方法-继承自UIResponder的方法1 - (void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event2 {3 // 如果动作类型是摇一摇[震动]4 if (motion == UIEventSubtypeMotionShake) {5 6 // 调用截屏方法7 ...
阅读全文

浙公网安备 33010602011771号