利用github创建cocoapods公共库 1.在github上创建一个公有库
2.复制这个库的链接地址,然后通过git 为你本地想要创建公有库的项目添加远程地址
$ git remote add origin "刚才创建的项目地址"
cd 到项目目录下,创建.spec 文件并做相应的配置pod spec create "库名".podspec //会生成一个.podspec后缀的文件
vim "库名".podspec 对其进行编辑
4.将本地项目提交到github远程仓库
...
为iOS添加radio组件
在html中有个很常用的组件radio,在日常开发中经常能够遇到。然而很遗憾UIKit并没有提供这一组件,导致在开发类似的功能时,时常需要写一些无关业务的冗余代码,极其的不优雅。于是乎封装一个简单易用,小巧灵活的redio组件在某个无所事事的下午被我提上日程。
先上demo地址
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 300, 200, 30)];
[self.view addSubview:label]
;...
iOS开发——RunTime总结篇
基础路径图:
在学习 RunTime 的基础时, 我们要搞清楚一些重要的东西, 一些专业术语:
SELidClassMethodIvarIMPCacheProperty
我们可以从这些东西里获取到指定类的所有信息, 无论是公开的, 还是私有的, 全部都可以拿到, 并且操作.
PS: 但操作私有方法的时候, 注意不要用来上架, 除非你有方法让苹果审核的时候通过.
RunTime进阶
进阶路径图:
在学习 RunTime&nbs...
从Masonry的链式写法到iOS的富文本封装
作为iOS应用开发者一定对Masonry非常了解,它的链式写法使得布局工作得心应手,高内聚的代码块也使得代码更加整洁清爽,相比于Auto Layout大大提高了开发效率。那么我们又如何汲取这种链式编程的思想,从而封装出简单好用的工具类呢?本期笔者通过对iOS中的常用富文本的一些封装,来做些简单的阐述,期望能够抛砖引玉。 话不多说先上demo:YsyRichText
痛点:我们在使用NSMutableAttributedString的时...
iOS美团同款”ZSource”二进制调试实现
一、前言
前段时间我们项目也实现了组件的二进制化,在之前的技术周会中我们有提到跟美团同款ZSource的二进制调试能力,我们也在自己的Cocoapods-imy-bin插件上实现了相同的功能pod bin code,借助这个周会我们就再来一探究竟二进制是怎么实现调试的和插件pod bin code实现细节。
二、效果演示
三、原理
用 MachOViewer 来查看二进制文件,以获取到更友好的二进制信息。利用 MachOViewer...
iOS开发之DiffableDataSource
在 iOS 13 中 Apple 为 UITableView 和 UICollectionView 引入了 DiffableDataSource,让开发者可以更简单高效的实现 UITableView、UICollectionView 的局部数据刷新。新的刷新的方法为 apply,通过使用 apply 方法无需计算变更的 indexPaths,也无需调用 reload,即可安全地在主线程或后台线程更新 UI, 仅需简单的将需要变更后的数据通过 NSDiffableDataSourceSnapshot 计算出来。下面以 UITableView 为...
Swift鲜为人知的特性:~=运算符是什么?
Swift运算符中的~=算不上出名,很多人并不清楚它是做什么的,该如何运用。简而言之,使用这个运算符,可以查看一个范围是否包含某个值。
本文将通过一些例子,带你了解这个运算符的用处和用法。开始吧!
考虑这样一种常见情况:在没有遇到任何错误的情况下,要启动网络请求并打出数据,因此要创建一个URLSessionDataTask,如下所示:
let task = URLSession.shared.dataTask(with: URL(string: "h...
Swift if let / var 连用语法与guard let 语法笔记
1.if let / var 连用语法
//MARK: if let / var 连用语法,目的就是为了判断值
func demo(name :String? ,age :Int?)
{
//事例1.用if语法判断值是否为空
if name != nil && age != nil
{
//强行解包有风险
//print(name! + String(age!))
}
else
{
//print("name或者age为nil")
}
...
iOS UILabel显示带颜色边的文字
原文:https://blog.csdn.net/dolacmeng/article/details/81204469
需求如图,UILabel要实现带红色边的文字显示。
1、新建UILabel的子类JXBorderLabel
2、重写drawRect:方法
#import "JXBorderLabel.h"
@implementation JXBorderLabel
- (void)drawRect:(CGRect)rect {
//1.获取上下文
CGContextRef context = UIGraphicsGetCurrentContext();
//2.给上下文线段设置线宽,...
iOS WKWebView+UITableView混排
目录
做内容展示页的时候,经常会用到WKWebView+UITableView的混排功能,现在此做一个总结,该功能的实现我采用了四种方法。
1、 tableView.tableHeaderView = webView 撑开webView2、[webView.scrollView addSubview:tableView] + 占位Div3、tableView.tableHeaderView = webView 不撑开webView (推荐)4、scrollView addSubView: webView & tableView (推荐)5、结尾
方案1:
webView...