前言 在工作中,我们经常会碰到这种情况,发现中间的某次提交是错误的,或者不再需要的代码,这个时候想要撤回那次commit,该如何呢? 问题背景 假如远程仓库上有5次commi...
前言 在工作中,我们经常会碰到这种情况,发现中间的某次提交是错误的,或者不再需要的代码,这个时候想要撤回那次commit,该如何呢? 问题背景 假如远程仓库上有5次commi...
CleanJSON[https://github.com/Pircate/CleanJSON] 直接使用Codable的痛点 只要有一个属性解析失败,整个解析都会失败。导致解...
现在项目有一个需求就是做空中升级,以前都是用官方代码进行升级的,但是代码使用的framework用的是swift,目前项目又是用OC写的,所以我们要进行混编,步骤如下: 1....
原文地址: Xcode14 下载 watchOS Simulator 失败[https://blog.wyan.vip/2022/11/xcode_download.html...
最近项目适配阿拉伯,记录一下最近的工作内容。在此之前,我是没有了解过这方面的知识。首先说说为什么要适配阿拉伯呢,是因为我们中文和英文这些是从左往右显示的语言,但是阿拉伯的语言...
在上一篇文章《使用AVPlayer播放网络音乐》介绍了AVPlayer的基本使用,下面介绍如何通过AVAssetResourceLoader实现AVPlayer的缓存 需求梳...
点赞!!! 背景 新入职公司,分配一台全新MacBook pro,借此机会梳理一下cocoapods的完整安装流程。 cocoapods安装依赖关系 cocoapods安装需...
Xcode控制台打印:[framework] CUICatalog: Invalid asset name supplied: '(null)'不知道是哪里的图片不存在或者传...
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSInteger rowNum = [tableView numberOfRowsInSection:indexPath.section];
// 绘制4种情况下的贝塞尔曲线
UIRectCorner corner = UIRectCornerAllCorners;
CGRect pathRect = CGRectZero;
CGFloat cornerRadius = 8.f;
CGFloat pathInset = 3.f;
if (rowNum == 1) {
pathRect = UIEdgeInsetsInsetRect(cell.bounds, UIEdgeInsetsMake(pathInset, pathInset, pathInset, pathInset));
} else if (indexPath.row == 0) {
pathRect = UIEdgeInsetsInsetRect(cell.bounds, UIEdgeInsetsMake(pathInset, pathInset, 0, pathInset));
corner = (UIRectCornerTopLeft | UIRectCornerTopRight);
} else if (indexPath.row == rowNum - 1) {
pathRect = UIEdgeInsetsInsetRect(cell.bounds, UIEdgeInsetsMake(0, pathInset, pathInset, pathInset));
corner = (UIRectCornerBottomLeft | UIRectCornerBottomRight);
} else {
pathRect = UIEdgeInsetsInsetRect(cell.bounds, UIEdgeInsetsMake(0, pathInset, 0, pathInset));
corner = UIRectCornerAllCorners;
cornerRadius = 0;
}
UIBezierPath *path = [UIBezierPath bezierPathWithRoundedRect:pathRect byRoundingCorners:corner cornerRadii:CGSizeMake(cornerRadius, cornerRadius)];
// 创建图层并设置贝塞尔曲线
CAShapeLayer *normalLayer = [[CAShapeLayer alloc] init];
normalLayer.fillColor = [UIColor whiteColor].CGColor;
normalLayer.shadowColor = [UIColor blackColor].CGColor;
normalLayer.shadowOpacity = 0.2;
normalLayer.shadowOffset = CGSizeMake(0, 0);
normalLayer.path = path.CGPath;
// 创建背景视图添加图层
UIView *normalBgView = [[UIView alloc] initWithFrame:cell.bounds];
normalBgView.clipsToBounds = YES;
[normalBgView.layer insertSublayer:normalLayer atIndex:0];
// cell设置
cell.backgroundView = normalBgView;
cell.backgroundColor = UIColor.clearColor;
}
iOS UITableView section圆角阴影来源:https://www.jianshu.com/p/739408a7aae1 给section添加圆角和阴影效果,效果如下: 全部实现都在UITableView的wil...
2.12 pinternals
Chisel的初步使用最近每周末都会看叶孤城的直播,对于我们iOS开发者来说,确实是一个福利,很感谢他们的分享精神,收获到的一些东西特此记录下。 12月13号 LLDB 今天听了武蕴牛x的视频,讲...
你好,iOS工程运行时,弹出的RN终端如何关闭?挺讨厌这个的
iOS关于RN环境搭建遇到的坑最近在学习RN,在学习过程中遇到一些坑,在这里跟大家分享一下,同时也非常感谢几位导师,Hank老师,Vergil老师,特别Lisa老师(非常感谢老师在半夜一两点不睡觉给我解决...
来源:https://www.jianshu.com/p/739408a7aae1 给section添加圆角和阴影效果,效果如下: 全部实现都在UITableView的wil...
在我前面的两篇文章里面分别对MVC框架中的M层的定义和构建方法进行了深入的介绍和探讨。这篇文章则是想深入的介绍一下我们应该如何去构建控制层。控制层是联系视图层和模型层的纽带。...
在我的iOS的MVC框架之控制层的构建(上)一文中介绍了一些控制层的构建方法,而这篇文章则继续对一些方法进行展开讨论。MVC被众多开发者所诟病的C层的膨胀,究其原因不外乎有如...
在 Mac 终端,cd 到某个目录是非常常用的操作。一般我们会将目录拖拽到 Terminal 或者 iTerm2(替代默认的 Terminal)。虽然问题也不大,但总觉得这样...
一、原理Beyond Compare每次启动后会先检查注册信息,试用期到期后就不能继续使用。解决方法是在启动前,先删除注册信息,然后再启动,这样就可以永久免费试用了。二、下载...
1.pod lib lint 和 pod spec lint 命令的区别 pod lib lint是只从本地验证你的pod能否通过验证; pod spec lint是从本地和...
一 :前言 很多的开发者 都听说过单元测试,但是不可否认 很多开发者 在实际开发中很少使用这个 单元测试。 大部分人想我自己把工程跑起来 一步步 按照 流程来测试 就行了 。...
有可能是因为pod中有swift 代码 但是主工程中没有swift 文件, 在主工程随便创建一个文件当做占位 就可以编译过了
如果GMShare是第三库,,你怎么改
target has transitive dependencies that include statically linked binaries由于公司分享库用到了 libWeiboSDK.a与 libWeChatSDK与TencentOpenAPI.framework 以及依赖了 DouyinOpenSDK在pod...