- 博客(164)
- 资源 (4)
- 收藏
- 关注
原创 swift 替代print 方法更具体的日志输出
直接贴代码了,可以支持多参数,在别人基础上进行修改public func Fprint(_ items: Any..., separator: String = " ", terminator: String = "\n", _ file:String = #file, ...
2020-01-16 21:16:11 575
转载 Swift5.0 遇到的一些问题
使用Swift5.0 遇到不少问题,有些是Xcode的bug,比如Xcode 11.2 使用 show in finder 显示文件位置,就会卡死,swift编译本来就慢,算了不抱怨了1 通过setValuesForKeys保存字典数据,无法存储参考文章:https://blog.csdn.net/Sunsgne/article/details/79643270代码如下class Pers...
2019-11-13 21:04:51 473
原创 python3 使用openpyxl 处理excel表格数据
直接贴代码,注释很清楚import openpyxlimport timeimport osimport threadingclass mExcelManager: def __init__(self,filerootpath,filename): self.allmodels = [] self.zimu = ["A", "B", "C", "...
2019-11-13 20:56:26 1081
原创 Python 多进程和多线程
一.多进程进程是程序的一次动态执行过程,它对应了从代码加载、执行到执行完毕的一个完整过程。进程是系统进行资源分配和调度的一个独立单位。进程是由代码(堆栈段)、数据(数据段)、内核状态和一组寄存器组成。在多任务操作系统中,通过运行多个进程来并发地执行多个任务。由于每个线程都是一个能独立执行自身指令的不同控制流,因此一个包含多个线程的进程也能够实现进程内多任务的并发执行。进程是一个内核级的实体...
2019-02-15 17:52:33 567
转载 IOS 分类结合RunTime实例
C本身是一个静态语言,数据类型和代码运行的结果都是在编译的时候确定的。而Objective-C的runtime机制赋予了C一个新的活力,即运行时机制。这也就是说,OC代码或者C代码在编译过后的机器码并不能得出运行结果。而这个结果需要在运行的时候才能获得,这样就给了我们一个新的操纵代码的空间,也就是运行时。在OC中,运行时是一段提前写完的一个模块的代码。可以这么说,OC的运行时就是这段代码赋予的。 ...
2018-03-07 18:12:42 390
原创 iOS 创建一个私有的 CocoaPods 库
创建一个私有的 CocoaPods 库(pod)涉及几个步骤,包括设置私有的 Git 仓库、创建 Podspec 文件、发布到私有仓库等等。首先,在 GitHub、GitLab 或 Bitbucket 上创建一个新的私有仓库,假设仓库名为 MyPrivatePod。这里 MyPrivateRepo 是你私有 Pod 仓库的名字,后面的 URL 是你在步骤 1 中创建的 Git 仓库的地址。在 GitHub 上创建一个名为 MyPrivatePod 的私有仓库。初始化私有 Pod 仓库。
2024-07-24 09:54:20 611
原创 swift 关于IteratorProtocol 和 Sequence协议的使用
Sequence 是 Swift 中定义可以被迭代的集合或序列的协议。Sequence 提供了许多有用的方法和属性来操作和访问序列中的元素。迭代器行为协议实现 IteratorProtocol 的类型提供了一个方法来按需生成序列中的下一个值。它通常与 Sequence 协议一起使用,以定义可以被迭代的集合或序列。Sequence 协议的核心是一个方法:makeIterator(),它返回一个遵循 IteratorProtocol 的迭代器。返回序列中的下一个元素。如果没有更多元素可返回,则返回 nil。
2024-07-09 17:10:59 234
原创 iOS 硬件解码相关
这表示像素数据的布局和颜色信息。它通常用于在图像和视频处理中,尤其是在Core Image、AVFoundation和其他多媒体框架中。2 获取和创建:通常,您会通过使用CVPixelBufferCreate等函数来创建CVPixelBufferRef,或者通过其他API从图像或视频源中获取CVPixelBufferRef。6 与 AVFoundation 集成:在视频处理中,您可能会从AVCaptureVideoDataOutput等类中获取到CVPixelBufferRef,并在处理视频帧时使用它。
2023-10-20 13:39:27 156
原创 SwiftUI高级用法
1.frame布局2. postion 控件偏移3.layoutPrority 布局优先级4 GeometryReader读取上层视图提供的文件大小5 preference,anchorPreference 从里向外传值6 aligentguid 自定义对其方式,不同父布局子控件实现对齐
2022-10-23 02:39:15 376
原创 swiftUI 属性包装 @State @ObservableObject @EnvironmentObject
//// Converter.swift// TestUIKitApp//// Created by bob bob on 2021/3/10.//import Foundationimport SwiftUI/* @propertyWrapper 属性包装,可以理解为装饰器模式,比如 @State,@Binding,@ObjectBinding,@EnvironmentObject1 init(initialValue:),wrappedValue 和 projectedVal
2021-03-10 16:03:04 444 1
原创 swiftUI 生成饼状图
swiftUI 生成饼状图//// RecycleRoundView.swift// TestUIKitApp//// Created by bob bob on 2021/2/23.//import SwiftUIenum Animal:String { case cat case dog case fish case horse case hamster case rabbit case bird var col
2021-02-23 15:35:24 552
转载 VideoToolbox进行视频编解码
解码部分//// TestVideoBox.swift// TestSwiftUIApp//// Created by bob bob on 2021/2/19.//import Foundationimport VideoToolboxclass Decoder1: NSObject { var width:Int32 = 480 var height:Int32 = 640 var decodeQueue:DispatchQueue = Dispatch
2021-02-20 14:56:46 817
原创 Mac M1芯片安装ffmpeg 和 brew
Mac M1芯片安装Brew1 M1芯片 Mac 安装brew M1芯片 Mac 安装brew教程2 M1芯片 Mac 安装ffmpeg打开路径 如果不存在就自己生成路径cd /opt/local/src下载源码git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg打开文件cd ffmpeg执行脚本./configure --prefix=/opt/local编译make安装make install查看安装版本/op
2021-02-01 18:05:36 6594 3
原创 swift 关于闭包值捕获问题
闭包在其定义的上下文变量中捕获常量和变量,即使这些常量和变量的原域已经不存在了,闭包仍然可以在闭包函数体内引用和修改这些值。问题探究,到底原域消失之后,这些变量是复制了一份在闭包引用内,还是之前变量或者常量都复用func test(){ let myincr = increatmFunStr(Other: "BOB") print(myincr()) print(myincr()) print(myincr()) print(myincr(
2020-09-03 15:14:58 510
原创 Swift 泛型 链表实现栈
Swift 泛型 链表实现栈最近在学习Swift相关,然后用数据结构练手protocol StackProtocol { //协议使用范型 /*定义一个协议时,有的时候声明一个或多个关联类型作为协议定义的一部分将会非常有用。关联类型为协议中的某个类型(任意类型)提供了一个占位名(或者说别名),其代表的实际类型在协议被采纳时才会被指定。你可以通过 associatedtype 关键字来指定关联类型,当然你也可以用来设计api用来构建统一的处理结构。*/ associatedtype T
2020-09-03 11:12:15 186
原创 Java 线程池
一、四种线程池Java通过Executors提供四种线程池,分别为:1、new SingleThreadExecutor创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO, LIFO, 优先级)执行。2、new FixedThreadPool创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。3、new ScheduledThreadPool创建一个可定期或者延时执行任务的定长线程池,支持定时及周期性任务执行。4、new Cache
2020-07-27 13:47:09 179
原创 Android 多线程
最近开始做安卓项目,然而对多线程的理解和应用还是欠缺,最近就系统的学习一下public class TestThreadActivity extends BaseActivity { private ProgressBar progressBar; private TextView textView; private Button downloadBtn; private MyTask task; @Override protected void onCr
2020-07-25 18:01:30 137
原创 Swift 跳转到地图导航
1,生成schemes2 实现//地图类型enum MapForm { enum MapURI:String { //百度 case baiduMap = "baidumap://" //高德 case gaodeMap = "iosamap://" //苹果 case appleMap = "http://maps.apple.com/" //谷歌 case go
2020-06-08 17:59:58 905
原创 Swift 学习笔记
1 字符拼接成字符串 let catCharacters:[Character] = ["c","a","t","!"] var catString = String(catCharacters) catString = catString ?? "如果变量为空,使用默认值" print(catString) let enclose...
2020-01-17 17:28:42 176
原创 Swift 常见协议
1 Hashable 协议class m1:Hashable{ var name:String = "" var age:Int?// swift 4.1 版本被废弃了 var hashValue:Int{ get{// 按照自己的规则生成 return name.hashValue * age.ha...
2020-01-17 14:49:11 435
转载 关于三维方面roll,pitch,yaw角度
三维空间的右手笛卡尔坐标在航空中,pitch, yaw, roll如图所示。pitch是围绕X轴旋转,也叫做俯仰角yaw是围绕Y轴旋转,也叫偏航角roll是围绕Z轴旋转,也叫翻滚角不管是上图的固定翼飞机,还是大疆的那种四旋翼飞机,在空间上调整姿态都是一样的,调整空间角度,然后进行合适飞行,至于太高深的不同类型飞机的飞行动力学,这个就不了解了...
2019-12-13 14:33:55 3109
原创 python3 sqlalchemy orm数据库使用
orm 是面向对象数据库,可有效避免写sql语句繁琐,最近了解一下感觉很不错,后面 贴代码,连接数据库我是使用 mysqlconnector库,在你的pycharm里面安装这个包,然后 打开数据 :net start mysql,用命令行创建数据库,创建表就可以orm了( tablename = ‘users’),创建了 users表,MySqlManager 是来测试数据库操作的,习惯使用面向对...
2019-11-27 19:32:11 340
原创 flutter 学习日记
最近开始看flutter相关的开发,本来这篇博客是八月份应该发出来的,但是项目又赶得紧就一直没空,最近补发,保证每个月至少一篇博客
2019-09-01 01:29:58 126
原创 ArcGIS 关于三维立体地图 简单使用,里面的资源就在 arcgis 的demo里面有
import UIKitimport ArcGISclass MapPlanVc: UIViewController { func startTransportData(spoint : SpacePoint) { DispatchQueue.main.async { self.planGraphic?.geometry = spoint.po...
2019-07-15 11:47:52 1192
原创 设计模式
工厂模式和策略模式public class TestDemo { //策略模式实现 public static void testDemo(){// CatchSuper catchSuper = CatchFactory.createCatchAccept(CatchPlicy.CatchRebat);// double accptMoney =...
2019-06-10 18:04:27 144
原创 Mac OS 开发
1,应用设置 @objc func termedApp(){ //关闭应用 NSApplication.shared.terminate(nil) } //显示提示角标 @objc func showAppAlertNum(){ NSApp.dockTile.badgeLabel = "20" } ...
2019-05-31 15:02:08 1088
原创 IOS 指纹识别
指纹识别必须ios8 以上真机,面部识别据说同一套API 没有支持面部识别的机器,没有测试,直接贴代码了,注释比较清晰,关键点在于业务逻辑,由于指纹识别只是类似授权自动登录,所以那些账户密码。必须存储,在授权成功自动登录,存储密码可参考keychainZbTouchManager.h//// ZbTouchManager.h// TestFFmpegDemo//// Creat...
2019-04-28 17:22:43 496
转载 Mac Security工具使用总结
Mac Security工具使用总结Security是Mac系统中钥匙串和安全模块的命令行管理工具,(图形化工具为Keychain Access.app)。钥匙串(Keychain)实质上就是一个用于存放证书、密钥、密码等安全认证实体的仓库,在计算机中保存为一个.keychain的文件,默认存放在以下目录中(使用这几个目录中的钥匙串时不需要写路径,直接用文件名即可,Security工具会自动搜索...
2018-12-28 15:17:58 3111
原创 使用python的mod_pbxproj 自动化 修改Xcode 工程
目前就先贴代码# coding=utf-8from mod_pbxproj import XcodeProjectimport osfrom foundation import *from mod_pbxproj import *import plistlibfrom pbxproj.pbxextensions import FileOptions# 修改工程def ch...
2018-11-30 14:05:39 5958
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人