iOS
BianHuanShiZhe
这个作者很懒,什么都没留下…
展开
-
Xcode 15新特性与iOS 17适配要点
UIButton 也增加了 Symbol Animations,使得按钮中使用的 SF Symbols 图标可以呈现动画。安装包的大小继续减小,安装速度继续提升,因为 iOS 的 Components 也需要动态下载安装,否则提示。代码支持添加 Bookmark,在某一行代码或者选中多行代码,然后右击,可以看到相应的添加菜单。UIMenu 与 UIAction 增加了新的构造方法,可以设置更多内容。调试区的菜单发生变化,并且输出的内容随着不同的级别拥有不同的背景色。原创 2023-06-12 23:15:20 · 7233 阅读 · 0 评论 -
ios绘制渐变色图片
@param gradientType 渐变的方式:0:水平渐变 1:竖直渐变 2:向下对角线渐变 3:向上对角线渐变。* @param bounds UIImage的bounds。* @param colors 渐变色数组,可以设置两种颜色。* @return 渐变色的UIImage。* 绘制渐变色的矩形UIImage。原创 2023-05-17 09:06:07 · 630 阅读 · 0 评论 -
iOS的NSMutableAttributedSring属性介绍
/ NSLigatureAttributeName 设置连体属性,取值为NSNumber 对象(整数),0 表示没有连体字符,1 表示使用默认的连体字符。// NSVerticalGlyphFormAttributeName 设置文字排版方向,取值为 NSNumber 对象(整数),0 表示横排文本,1 表示竖排文本。// NSStrokeWidthAttributeName 设置笔画宽度,取值为 NSNumber 对象(整数),负值填充效果,正值中空效果。原创 2023-02-25 15:56:23 · 652 阅读 · 0 评论 -
iOS自定义push动画-从下向上push
/动画速度,kCAMediaTimingFunctionEaseInEaseOut创建了一个慢慢加速然后再慢慢减速的过程。原创 2023-02-18 14:16:18 · 1000 阅读 · 0 评论 -
iOS 修改TabBar的文字颜色 字体和背景颜色
修改UITabBar原创 2023-01-30 11:00:20 · 2494 阅读 · 0 评论 -
Swift中的GCD线程的封装处理
importUIKitclasspublictypealiaspublicstaticfunc@escapingTask)publicstaticfunc@escaping@escapingTask)@escapingnilletasynciflet//MARK: 延迟@escapingreturn@escaping@escapingreturn@escapingnilletiflet。原创 2023-01-28 11:09:11 · 571 阅读 · 0 评论 -
iOS保存电话号码到通讯录
通讯录处理原创 2023-01-15 19:12:13 · 417 阅读 · 0 评论 -
iOS解决float的经度问题
NSDecimalNumber *number = [NSDecimalNumber decimalNumberWithString:@""];原创 2023-01-10 21:41:47 · 113 阅读 · 0 评论 -
解决ffi的问题
sudo gem uninstall ffi && sudo gem install ffi -- --enable-libffi-alloc原创 2023-01-07 17:06:44 · 283 阅读 · 0 评论 -
iOS跨设备交互需要经过的方法
【代码】iOS跨设备交互需要经过的方法。原创 2022-12-18 17:07:05 · 171 阅读 · 0 评论 -
iOS原生项目拥有Flutter热重载极速调试
3. 选择的项目会在Open Recent中出现, 保持File Watcher的选项勾选.中执行, 如果想让全部的控制器都能使用, 直接添加到BaseViewController.就能看到效果, 部分页面可能耗时比较久或无法使用, 正常页面均能使用.5. 在需要动态调试的页面控制器中写上。6. 重新编译项目, 控制台可以看到。方法, 把需要操作的UI方法添加到。7. 修改完UI, 直接。原创 2022-12-13 19:22:23 · 773 阅读 · 0 评论 -
直播RTMP闲谈
librtmp是RTMP协议的实现,可以使用librtmp来实现协议的解析和数据的收发。直播服务器可以基于nginx+rtmp实现;直播客户端方面采用librtmp负责推流,FFmpeg负责编码;收看客户端采用VLC即可,因为VLC本身就可以解析RTMP流,又可以解析编码后的视频数据。原创 2022-12-06 17:07:21 · 420 阅读 · 0 评论 -
iOS自动化生成ipa的脚本
#!bin/shecho "开始工程清理"# ${ProjectName}project工程中(非workspace工程).xcodeproj的文件名字# ${Target}project工程中编译的target,可省略# ${WorkspaceName}工程中.xcworkspace的文件名字# ${Scheme} 当前要编译运行的scheme# configuration ${Debug或者Release} 当前是要以Debug运行还是以Release运行# -quiet 忽略警告提示打印# -UseN原创 2022-12-05 14:52:23 · 910 阅读 · 0 评论 -
苹果加急审核App的办法
1 通过发邮件的方式2 访问链接 Sign In - Apple3 打电话过去后,你要说的夸张一下,例如:公司利益严重受到损害,crash问题严重影响到App的使用,客户已经给我们很大的压力等,完了后,苹果就会给你一个备案的编号如果有了这个编号后,一般就没有必要再继续打下去了,因为你打过去,你把这个编号报给苹果的客服,他们那边一查,你的情况他们都知道,所有,没有必须再去浪费精力,如果上面的邮件你充分得到了审核团队的认可,基本上24小时内就会有答复,我最快的一次是下午打的电话,提现到AppStore审核,第二原创 2022-12-05 09:17:55 · 1129 阅读 · 0 评论 -
XCode 去除 UserInterfaceState.xcuserstate 文件困扰
1、进入终端执行命令,vi .gitignore_global。2、copy 如下文件夹:(直接copy)4、执行命令:(直接copy)原创 2022-12-01 22:54:01 · 476 阅读 · 0 评论 -
UITableView在iOS15中显示混乱的问题
原创 2022-01-29 17:48:41 · 787 阅读 · 0 评论 -
iOS使用clang -readwrite-objc main.m
1 cd 要转换的类的文件夹2 clang -rewrite-objc main.m -o mian.cpp (main改成你要转换类名)3 show in finder查看 类名.c p p//如有报错:$ clang -rewrite-objc main.m 这样操作会报解决方案一:fatal error: 'UIKit/UIKit.h' file not found#import <UIKit/UIKit.h> ^~~~~~~~~~~~~~~1...原创 2022-01-28 15:19:46 · 116 阅读 · 0 评论 -
Xcode低版本支持高手机版本运行
首先需要安装相应的support device ,然后在build setting里面配置 OTHER Code Signing Flags原创 2022-01-08 13:22:09 · 939 阅读 · 0 评论 -
Objective-c底层的一些注意点
我们平常编写的objective-c代码,底层都是通过c\c++代码实现的objective-c的面向对象都是基于c\c++的数据结构结构实现的将objective-c代码转换为c\c++代码xrun -sdk iphoneos clang -arch arm64 -rewrite-objc oc代码 -o 输出路径cpp文件...原创 2021-11-22 22:18:50 · 2203 阅读 · 0 评论 -
OC实现Spread展开全屏动画和收缩动画
展开动画- (void)viewDidLoad { [super viewDidLoad]; self.view.backgroundColor = UIColor.redColor; // Do any additional setup after loading the view, typically from a nib. _myStongView = [[UIView alloc] initWithFrame:CGRectMake(...原创 2021-08-09 22:58:38 · 300 阅读 · 0 评论 -
iOS 字体设置大小和weight
[UIFont fontWithName:@"PingFang-SC-Medium-Medium" size:12];原创 2021-07-18 11:40:55 · 882 阅读 · 0 评论 -
iOS代码覆盖率之Icov
首先下载icov导入icov到项目目录里面然后配置脚本 XcodeCoverage/exportenv.sh运行原创 2021-07-07 00:20:00 · 286 阅读 · 0 评论 -
iOS 14 出现问题总结和解决方案
push多个页面想返回根页面调用这个popToRootViewControllerAnimated方法时底部tabbar消失了, 系统的_tabBar的kvo监听也监听不到了在继承系统navgationCongtroller的类里加这个方法(NSArray<__kindof UIViewController *> *)popToRootViewControllerAnimated:(BOOL)animated{if (self.viewControllers.count > 1).原创 2020-10-25 23:58:56 · 1189 阅读 · 0 评论 -
Swift开启权限并且拍摄视频
引入AVFoundation 框架 fileprivate lazy var queue = DispatchQueue.global(); fileprivate lazy var audioqueue = DispatchQueue.global(); fileprivate lazy var session = AVCaptureSession(); fileprivate lazy var previewLayer = AVCaptureVideoPreviewLaye.原创 2020-10-19 00:30:05 · 478 阅读 · 0 评论 -
iOS 通过UICollectionView实现无限滚动
#import "LoopScrollView.h"#import "ScollViewCell.h"#import "WeakTimerTargetObject.h"@implementation LoopScrollView-(void)awakeFromNib{ self.dataSource = [NSMutableArray arrayWithObjects:@"launch_guild_01",@"launch_guild_02",@"launch_guil...原创 2020-10-17 18:18:10 · 1274 阅读 · 0 评论 -
iOS实现pod库以framework集成,提高Xcode编译效率
iOS开发过程中,随着项目的业务复杂度不断提高,引入的第三方库也逐渐增多,之前是通过源码的形式集成进行编译,每次切换分支,或者切换scheme时,编译时间特别的长,严重的影响了开发效率。最近通过cocoapod插件的形式实现了通过framework的形式集成pod库主要原理使用cocoapod插件cocoapods-binary将pod库在pod install的时候编译成framework.1 安装 bundlersudo gem install bundler2 创建gemfile.原创 2020-08-09 00:19:37 · 558 阅读 · 0 评论 -
Xcode 手动添加调试包
链接:https://pan.baidu.com/s/1AI7DnpEMatVpmclvQysySw 密码:brwj官网下载:https://developer.apple.com/download/打开应用程序 xcode ,显示包内容然后选择 Contents ->Developer -> Platforms->DeviceSupport将下载的调试包添加进去...原创 2020-07-04 17:14:48 · 297 阅读 · 0 评论 -
github下载慢的解决办法
通过https://www.ipaddress.com/ 查询 查询github.global.ssl.fastly.net和github.com的真实IP地址打开终端,通过vi命令打开host文件编辑sudo vi /etc/hosts将上面的ip 和 github.global.ssl.fastly.net 对应添加上然后执行 ipconfig或者flushdns来刷新缓存dns...原创 2020-06-06 22:46:01 · 153 阅读 · 0 评论 -
打开Core Data的SQL日志输出开关
打开 Product,点击 Edit Scheme.点击 Arguments,在 Arguments Passed On Launch 中添加 2 项-com.apple.CoreData.SQLDebug1原创 2020-05-23 22:36:51 · 237 阅读 · 0 评论 -
Swift中播放音频
Swift中播放音频可以通过AVPlay,AVAudioPlayer和StreamingKit 进行播放音频AVAudioPlayer 仅播放本地音乐文件,如果要播放网络文件需要将网络文件下载下来进行播放AVPlayer既可以播放本地音频文件,也可以播放在线音频StreamingKit 是一个适用于 iOS 和 Mac OSX 的音频播放流媒体库。StreamingKit 提供了一个简...原创 2020-05-02 01:13:56 · 2891 阅读 · 0 评论 -
cocoaPods 使用过程的Cannot synthesize weak property because the current deployment target..的解决办法
在Podfile 添加如下代码,重新pod install一下post_install do |installer|installer.pods_project.targets.each do |target|target.build_configurations.each do |config|config.build_settings[‘IPHONEOS_DEPLOYMENT_TARG...原创 2020-05-01 18:02:06 · 1199 阅读 · 0 评论 -
AFNetworking 多文件上传
NSURL *url1 = [[NSBundle mainBundle] URLForResource:@"06.jpg" withExtension:nil]; NSURL *url2 = [[NSBundle mainBundle] URLForResource:@"01.jpg" withExtension:nil]; [[AFHTTPRequestOperationMan...原创 2020-03-21 18:45:27 · 236 阅读 · 0 评论 -
iOS解压缩文件
引入第三方库SSZipArchive压缩文件[SSZipArchive createZipFileAtPath:@"/Users/Apple/Desktop/123.zip" withContentsOfDirectory:@"/Users/Apple/Desktop/images"];解压文件 [[[NSURLSession sharedSession] downloadTa...原创 2020-03-21 17:23:47 · 629 阅读 · 0 评论 -
iOS NSURLSession实现网络请求
发送POST请求 NSURL *url = [NSURL URLWithString:@"http://127.0.0.1/demo.json"]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; request.HTTPMethod = @"post"; NSStr...原创 2020-03-21 17:01:54 · 962 阅读 · 0 评论 -
iOS往文件写数据的三种方法
1 直接通过将data加入到目标文件的方法[self.mutableData writeToFile:@"/Users/Apple/Desktop/text.hm" atomically:YES];2 通过文件输出流的方式@property (nonatomic, strong) NSOutputStream *stream;首先根据给出的路径初始化输出流//创建流...原创 2020-03-21 15:49:59 · 1279 阅读 · 0 评论 -
iOS 之缓存类NSCache的使用
首先实现缓存类的delegate <NSCacheDelegate>@property (nonatomic, strong) NSCache *cache;初始化缓存类NSCache- (NSCache *)cache { if (_cache == nil) { _cache = [[NSCache alloc] init]; //...原创 2020-03-21 14:44:17 · 255 阅读 · 0 评论 -
iOS通过关联对象给一个对象类别动态添加属性
- (NSString *)urlString { return objc_getAssociatedObject(self, "str");}- (void)setUrlString:(NSString *)urlString { //可以在运行期间给某个对象增加属性 //关联对象 objc_setAssociatedObject(self, "s...原创 2020-03-21 14:05:12 · 488 阅读 · 0 评论 -
iOS 转场动画
// 转场动画 CATransition *anim = [CATransition animation]; anim.type = @"pageCurl"; anim.duration = 2; [_imageView.layer addAnimation:anim forKey:nil];...原创 2020-03-20 20:48:36 · 129 阅读 · 0 评论 -
iOS苹果内购文档查看地址
https://help.apple.com/app-store-connect/#/dev0067a330b原创 2020-03-20 20:30:31 · 557 阅读 · 0 评论 -
iOS画饼状图
// 获取上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); // 拼接路径 CGPoint center = CGPointMake(125, 125); CGFloat radius = 100; // 第一个扇形 // 起始角度 CGFloat startA =...原创 2020-03-20 18:26:18 · 239 阅读 · 0 评论