iOS 之旅
一栏自学iOS历程,付出与收获。
Johnny Tong
这个作者很懒,什么都没留下…
展开
-
iOS 获取设备占用内存
iOS 应用占用内存,free内存原创 2025-02-17 09:39:06 · 611 阅读 · 0 评论 -
ReactiveSwift 简单使用
ReactiveSwift 简单使用。原创 2025-01-16 09:30:46 · 328 阅读 · 0 评论 -
iOS 18 适配 Xcode 16 问题
iOS 18 xcode 16 适配原创 2024-09-13 19:36:49 · 7877 阅读 · 1 评论 -
iOS ReactiveCocoa MVVM
ReactiveCocoa 下 MVVM简单使用。原创 2024-06-12 08:46:25 · 1127 阅读 · 0 评论 -
git pull 出现 “Enter passphrase for key ‘/Users/xxx/.ssh/id_rsa‘ ”
Enter passphrase for key ‘/Users/xxx/.ssh/id_rsa‘原创 2024-03-25 13:42:47 · 3380 阅读 · 0 评论 -
Swift Vapor 教程(登录&注册)
Swift Vapor原创 2024-03-01 14:18:11 · 453 阅读 · 0 评论 -
Swift Vapor 教程(CURD 操作)
swift vapor原创 2024-02-02 16:11:43 · 702 阅读 · 0 评论 -
Swift Vapor 教程(查询数据、插入数据)
Swift Vapor原创 2024-02-01 14:59:51 · 801 阅读 · 0 评论 -
Swift Vapor 教程(项目创建)
The future of web development.原创 2024-01-30 20:25:33 · 697 阅读 · 0 评论 -
m1 rvm install 3.0.0 Error running ‘__rvm_make -j8‘
M1 安装cocopods是遇到的问题原创 2023-11-16 16:30:47 · 3216 阅读 · 4 评论 -
CocoaPods podfile 文件配置
podfile 文件配置原创 2023-11-16 15:06:37 · 1546 阅读 · 0 评论 -
Cocopods pod install警告记录
pod install 时出现警告原创 2023-11-16 14:32:55 · 1625 阅读 · 0 评论 -
iOS 17 适配 Xcode 15 问题
iOS 17 适配原创 2023-09-13 18:18:12 · 10858 阅读 · 17 评论 -
xcode 版本下载大全
xcode 下载大全原创 2023-08-07 17:21:56 · 1406 阅读 · 0 评论 -
M1打包 xxxx.xcodeproj: error: Provisioning profile “xxx“ doesn‘t include the currentlyselected device
M1 芯片 脚本打包提示不包含本机原创 2023-07-20 09:45:51 · 1398 阅读 · 0 评论 -
文章标题
FU192-8MD43-H852Z-9GPGZ-ZYRR8原创 2017-12-09 09:17:43 · 169 阅读 · 0 评论 -
ios 解决NSTimer 进入后台循环失效
UIBackgroundTaskIdentifier taskId;//声明- (void)applicationDidEnterBackground:(UIApplication *)application {//APP进入后台 //开启一个后台任务 taskId = [application beginBackgroundTaskWithExpirationHandler:^{原创 2017-05-09 11:10:17 · 3328 阅读 · 0 评论 -
ios GCD队列操作
GCD提供的一些操作队列的方法 dispatch_set_target_queue 刚刚我们说了系统的Global Queue是可以指定优先级的,那我们如何给自己创建的队列执行优先级呢?这里我们就可以用到dispatch_set_target_queue这个方法:dispatch_queue_t serialDiapatchQueue=dispatch_queue_create("com.tes原创 2016-03-14 10:32:40 · 2188 阅读 · 0 评论 -
iOS MVVM使用
对于从java过度过来的程序员来说,对MVC的影响是深远的。但是在做iOS开发中使用MVC导致Controller越来越臃肿,既要承担view又要做网络请求,Controller变得难以维护。 所以使用MVVM将Controller解放出来,让Controller只需要专注数据调配工作。 ViewModel则去负责数据加工并通过机制让view相应ViewModel的变化。 MVVM是基于胖mo原创 2018-03-28 15:53:41 · 5145 阅读 · 0 评论 -
UIColor 扩展
/// 使用 16 进制数字创建颜色,例如 0xFF0000 创建红色////// @param hex 16 进制无符号32位整数////// @return 颜色+ (instancetype)colorWithHex:(uint32_t)hex { uint8_t r = (hex & 0xff0000) >> 16; uint8_t g = (hex & 0x00原创 2018-01-10 12:56:27 · 253 阅读 · 0 评论 -
swift navigationItem封装
在swift中有时候navigationItem需要使用自己定义的。通过扩展使用构造方法创建navigationItem。navigationItem.leftBarButtonItem = UIBarButtonItem(imageName: "tabbar_profile")extension UIBarButtonItem { convenience init(imageName :原创 2017-04-10 10:02:28 · 695 阅读 · 0 评论 -
ios NSNotificationCenter消息通讯机制
作用:NSNotificationCenter是专门供程序中不同类间的消息通信而设置的.注册通知:即要在什么地方接受消息[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(mytest:) name:@" mytest"object:nil];**参数介绍: addObserver: 观察者,即在什么地原创 2016-02-25 13:03:10 · 657 阅读 · 0 评论 -
NSDate YYYY-MM-dd hh:mm:ss
#pragma mark 获取日期- (NSString *)getNowDate{ NSDate *date=[NSDate date]; NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; [formatter setDateFormat:@"YYYY-MM-dd hh:mm:ss"]; NS原创 2016-04-15 10:49:57 · 2031 阅读 · 1 评论 -
mac cocoa pods 安装过程中出现问题
自己在使用cocoapods的时候出现了问题,导致ruby环境出问题,pod文件的时候一直卡。 正确安装Mac系统下的rubyRuby安装方式有两种,一个是 rvm多环境安装, 一种是homebrew安装RVM安装 MAC 安装使用 Ruby 最安全方便的方式就是使用RVM, 安装链接点击右侧: https://rvm.io/rvm/install安装RVM 1.1 官方推...原创 2018-04-02 14:43:21 · 2837 阅读 · 0 评论 -
IOS CoreData
一、CoreData是不是ORM?在很多教程中,CoreData被认为是一套ORM框架,虽然它确实具备许多ORM的功能,但更准确地说,它其实是一套“可视化数据持久化框架”,通俗讲就是提供一个可视界面,帮助你把你的数据对象“持久化”到“磁盘”上,使得程序再次启动后它们都还在。关于CoreData是否ORM,和直接使用SQLite的关系,StackOverflow上有一个被Closed的讨论,感兴趣自己原创 2015-11-03 11:12:58 · 1077 阅读 · 0 评论 -
swift个人通讯录
注意:在做个人通讯录的时候第一次使用storyboard,stroyboard之间跳转传值。还有就是使用闭包回调ListTableViewControllerimport UIKitclass ListTableViewController: UITableViewController { /** block 特点 1 定义block可以和当前上下文一...原创 2018-04-12 11:07:49 · 753 阅读 · 0 评论 -
iOS 使用Charles(青花瓷)抓包并篡改返回数据图文详解
charles又名青花瓷,在iOS开发中的抓包中具有重要作用。最大的三点用处,一就是拦截别人软件的发送的请求和后端接口,练习开发。二是自己后端返回的response拦截修改后再接收以达到测试临界数据的作用。三写脚本重复拦截抓取别人的数据。1.开始之前的准备工作 首先安装一下这个软件 这个相信很多人电脑里应该都安装了,没安装的搜charles破解版也能很容易搜到。如果没安装java环境,首次进入原创 2015-11-01 16:42:54 · 535 阅读 · 0 评论 -
iOS UIActionSheet提示框
之前做过一个项目使用最新的提示框4s会默然的崩溃,于是又修改成最原始的UIActionSheet UIActionSheet使用情况具体如下#import "ViewController.h"@interface ViewController ()<UIActionSheetDelegate>@property (nonatomic, strong)UIButton *button;@end原创 2016-03-05 14:45:05 · 333 阅读 · 0 评论 -
iOS 获取网络ip
#import "IpAddress.h"#import #import #import #define IOS_CELLULAR @"pdp_ip0"#define IOS_WIFI @"en0"#define IOS_VPN @"utun0"#define IP_ADDR_IPv原创 2017-01-19 09:32:25 · 1441 阅读 · 1 评论 -
NSNotification通知
通知就是在需要的地方发出,在接受通知的地方发生通知内容。 有个界面 root –> second –>There 在There页面发出通知 让root页面改变 There页面代码如下:@interface ThereController ()@property (nonatomic, strong)UIButton *buttons;@end@implementation There原创 2016-04-22 17:08:12 · 323 阅读 · 0 评论 -
cocoa 处理多个网络请求
场景: 在开发中很多时候在同一个界面中会有多个网络请求,而且要在这几个网络请求成功返回的时候再做下一步操作。分析一种是对个网络请求结束后统一操作,在一个界面需要同时请求多种数据。比如列表数据,广告数据等,全部请求到再一起刷新界面。多个请求顺序执行,下一个请求依赖于上一个请求的结果。这些要求对呀普通的操作是可以做到并发控制和依赖操作。但是对于网络请求这种需要时间的请求来说,...原创 2018-05-16 16:42:16 · 429 阅读 · 0 评论 -
NSAttributedString绘制按钮上图下字体
/// 使用图像和文本生成上下排列的属性文本////// @param image 图像/// @param imageWH 图像宽高/// @param title 标题文字/// @param fontSize 标题字体大小/// @param titleColor 标题颜色/// @param spacing 图像和标题间距//////原创 2018-01-10 12:58:19 · 406 阅读 · 0 评论 -
NavigationController
NavigationController结构图 UITabBarController和NavigationController结构类似原创 2018-08-08 15:33:23 · 190 阅读 · 0 评论 -
iOS 微信SDK分享
1-> 首先去微信开放平台 https://open.weixin.qq.com注册一个appid 2-> 然后去微信开发中心去下载需要的SDK https://open.weixin.qq.com 3->下载好SDK导入到工程里面 4-> 导入相应的架包 5-> 设置linking (Build Settings- > linking->other linking flags)原创 2016-12-12 09:34:12 · 1082 阅读 · 1 评论 -
密码8到64位大小写字母+数字+字符 不能包含空格
#import "NSString+Extension.h"#define NULLString(string) ((![string isKindOfClass:[NSString class]])||[string isEqualToString:@""] || (string == nil) || [string isEqualToString:@""] || [string isKindO原创 2017-06-09 18:23:02 · 5002 阅读 · 0 评论 -
iOS 代码块
有时候使用代码块能提高开发效率#pragma mark -#pragma mark - tableView-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{return 1;}-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection原创 2017-05-08 09:41:59 · 447 阅读 · 0 评论 -
NSLog输出
OC中NSLog#ifdef DEBUG#define NSLog(format, ...) printf("\n[%s] %s [第%d行] %s\n", __TIME__, __FUNCTION__, __LINE__, [[NSString stringWithFormat:format, ## __VA_ARGS__] UTF8String]);#else#define NSLog(f原创 2017-02-09 13:54:43 · 823 阅读 · 0 评论 -
iOS 中捕获程序崩溃日志
iOS开发中遇到程序崩溃是很正常的事情,如何在程序崩溃时捕获到异常信息并通知开发者,是大多数软件都选择的方法。下面就介绍如何在iOS中实现:1. 在程序启动时加上一个异常捕获监听,用来处理程序崩溃时的回调动作 NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler); 官方文档介绍:Sets the top-level error-h原创 2016-02-27 18:23:02 · 621 阅读 · 0 评论 -
IOS 自定义UINavigationBar返回按钮
在做项目的时候,很多时候都需要自定义UINavigationBar的返回按钮,有些人选择直接写一个UIView作为NavigationBar,有时候会选择修改系统UINavigationBar上的BarBarButtonItem或者leftBarButtonItem。我选择后面一种 修改系统UINavigationBar上得 leftBarButtonItem 首先需要知道的是,苹果对于修改UIN原创 2015-10-16 11:13:47 · 511 阅读 · 0 评论 -
遍历文件夹下某种某种所有文件类型
- (NSArray*) allFilesAtPath:(NSString*) dirString { NSMutableArray* array = [NSMutableArray array]; //文件操作对象 NSFileManager *manager = [NSFileManager defaultManager]; //文件夹路径 NSStrin原创 2017-11-22 19:20:42 · 567 阅读 · 0 评论