image
RAC 指的就是 RactiveCocoa ,是 Github 的一个开源框架,能够帮我们提供大量方便的事件处理方案,让我们更简单粗暴地去处理事件,现在分为 ReactiveObjC 和 ReactiveSwift ,两个框架的功能使用相似,由于正好在学习这个然后公司项目是用 OC 写的,所以将 ReactiveObjC 的使用方法记录一下。
下载地址:https://githu...
最全的iOS基础篇开发教程集锦
最全的iOS 基础篇开发教程集锦,没有之一!
最近大火的iPhone XS Max和iPhone XS,不知道有没有同学已经下手了呢?一万三的价位确实让很多人望而却步啊。据说为了赢得中国的用户,专门出了双卡双待的,可想而知中国市场这块“肥肉”人人都想要。
近几年,无论苹果出什么样的产品以及多高的价位,都会有非常多的苹果“死忠粉”去购买,iOS系统也是全球认可的最流畅性的系统。越来越多的人使用iPhone系列...
iOS UILabel基础
NS_CLASS_AVAILABLE_IOS(2_0) @interface UILabel : UIView <NSCoding, UIContentSizeCategoryAdjusting>
UILabel------基础控件显示的文本只读,无法编辑,可以根据文字个数自动换行
一、定义UILabel + 布局
UILabel *lab = [[UILabel alloc]init];
lab.frame = CGRectMake(150, 150, 100, 100);
UILabel *lab = [[UILabel alloc]initWithFrame:CGRectMake(150, 150, 100, 100)...
iOS 字典基础
NSDictionaryNSMutableDictionary
@interface NSMutableDictionary<KeyType, ObjectType> : NSDictionary<KeyType, ObjectType>
同数组---NSDictionary的特性,NSMutableDictionary同样继承
字典:
key -----> value
索引 ----> 文字内容
存储键值对
一、创建字典
NSDictionary *dict = [NSDictionary dictionaryWithObject:@"字典" forKey:@"name"];
即
NSArray *key...
iOS Protocol基础
基本用途
可以用来声明很多方法不能声明成员变量,只有.h文件只要某个类遵守了这个协议,就相当于拥有了这个协议中的所有方法声明任何类都可以使用协议,只要遵守它只要父类遵守了某个协议,就相当于子类也遵守了
二、格式
协议的编写
@protocol 协议名称
方法声明列表
@end
@protocol myProtocol <NSObject>
@required //要求实现,不实现就会发出警告
- (void)test1;
@optional ...
iOS Block基础
相信大家都明白 block 的重要性是毋庸置疑的,它本身封装了一段代码并将这段代码当做变量,通过 block()的方式进行回调。block的这种机制和 函数指针 非常像。而我的理解即是: block 就相当于是 有返回类型 的 代码块。
一、定义block
返回类型 (^block类型名称) (block形参):
void (^myBlock)() = ^(){
NSLog(@"--...
iOS 多媒体AVAudioRecorder录制音频
随着社交应用的推广,录音功能的使用频率愈来愈高。
K歌、语音消息、录音笔等。
针对这个需求,iOS专门提供了AVAudioRecorder类。AVAudioRecorder类是专用录制音频的接口,包含在AVFoundation框架里。可以录制任意时长音频、能控制录音过程[暂停、继续]、控制音量。
属性
属性声明功能描述@property(readonly, getter=isRecording) BOOL recording;获取录音器是否正在录音@property(assign, nul...
iOS- iOS15后获取window方法
windows API_DEPRECATED("Use UIWindowScene.windows on a relevant window scene instead", ios(2.0, 15.0));
目前使用的获取window的方式只支持到iOS15,所以在项目开发的时候担心之后通过该方法拿到的window有问题,研究了下怎么拿新版的window的办法
if (@available(iOS 15, *)) {
__block UIScene * _Nonnull tmpSc;
[[[UIApplication sharedApplication] connectedScenes] enu...
iOS15解决导航条适配问题
在旧版本代码中设置导航条颜色使用的是navigationBar.barTintColor,但在iOS15上并没有生效,而且navigationBar.isTranslucent=NO也没有生效,导航条依然是透明的。
解决方案:
if (@available(iOS 15.0, *)) {
UINavigationBarAppearance *appearance = [[UINavigationBarAppearance alloc] init];
[appearance configureWithOpaqueBackground]
;
//设置导航条背景色
appear...
OS手机Charles抓包
1.手机和电脑连接到同一Wifi下
2.电脑启动charles,检查基础设置
Proxy->Proxy Setting:
Proxy->SSL Proxy Setting:
3.将手机wifi设置代理
1)查看电脑本机IP:按住option键点击wifi图标
2)手机中设置代理
3)手机首次连接charles后发起任意http请求会弹出是否信任窗口,点击Allow
4.手机安装证书
手机连接charles代理后,打开safari浏览器,地址栏输入chls.pro/ssl打开...