自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (5)
  • 收藏
  • 关注

原创 iOS音视频播放-AVPlayer简单使用

按公司需求需要对音频文件进行后台播放,借此机会对音频播放做了个总结.主要针对 AVPlayer 进行详细说明.iOS 各播放器比较名称使用环境优点确点System Sound ServicesAVFoundationC语言的底层写法,节省内存支持的格式有限,音量无法通过音量键控制,而且播放方式单一。AVAudioPlayerAVFoundation抒写效率更高,基本上支持所有的音频格式,对播放的控制,如循环播放,声音大小,暂停等比较方便。对内存的消耗会多些。不

2020-10-16 11:38:35 30664

原创 2024 年 AI 辅助研发趋势

不过,这些挑战也蕴含着机遇,促使科技社区共同思考并建立更完善的法规标准和伦理框架,以推动AI在研发领域的持续健康发展。在AI辅助研发趋势下,教育体系需要与时俱进,培养具备AI技能的研发人才,为未来的研发工作提供人才支持。跨学科的培训和交叉领域知识的学习将成为人才培养的重点,以适应AI辅助研发的需求和发展。未来,AI辅助研发将深度融合于研发流程中,智能化研发平台将蓬勃发展,提供更个性化、高效的研发服务。AI辅助研发可以加速新药筛选与设计过程,帮助找到更有效的治疗方案,降低研发成本。

2024-03-20 11:20:36 486

原创 全球首位AI程序员诞生,将会对程序员的影响有多大?

岗位转变: 程序员的角色可能会向更高层次的设计、架构和管理方向发展,从事更复杂、创新性的工作,而基础、重复性工作可能被AI程序员取代。技能升级: 程序员需要不断学习和提升自己的技能,专注于那些AI程序员无法涵盖的领域,如创意性编程、项目管理和与人类互动的工作。与AI合作: 学会与AI程序员合作,充分利用其优势,提高工作效率,同时发挥人类程序员在创新性、判断力和人际沟通等方面的优势。抽象思维限制: AI程序员的智能受限,难以处理复杂的抽象概念和非结构化问题,仍需要人类程序员进行思考和决策。

2024-03-20 10:51:18 209

原创 Sora - 探索AI视频模型的无限可能

随着人工智能技术的飞速发展,AI视频模型已成为科技领域的新热点。而在这个浪潮中,OpenAI推出的首个AI视频模型Sora,以其卓越的性能和前瞻性的技术,引领着AI视频领域的创新发展。让我们将一起探讨Sora的技术特点、应用场景以及对未来创作方式的深远影响。

2024-02-22 16:39:51 496

原创 前端(vue)数据存储方案

本需求文档旨在明确前端项目中的数据存储需求,包括数据类型、数据结构、数据交互方式等。它定义了前端项目中需要存储和处理的数据,以及对这些数据进行访问和操作的要求。数据存储在本地磁盘,关闭网页或异常退出程序时数据不会被清除,可长期存在于磁盘中。数据存储与内存中不会进行持久化存储,关闭网页或异常退出程序时数据会被清除。数据存储按数据类型分为 持久存储、内存存储(响应式)、内存存储(非响应式),根据不同的业务场景选择合适的存储方式。仅做数据存储使用,数据改变不是自动引起页面刷新。

2024-02-22 16:32:41 1342

原创 深度学习的进展

深度学习作为人工智能领域的重要分支之一,利用神经网络模拟人类大脑的学习过程,通过数据训练模型以自动提取特征、识别模式、进行分类和预测等任务。近年来,深度学习在多个领域取得显著进展,尤其在自然语言处理、计算机视觉、语音识别和机器翻译等方面实现了突破性进展。未来,深度学习可能带来更智能、更智能化的人机界面,推动人工智能技术与人类社会的融合和发展。未来,深度学习和机器学习将相辅相成,结合各自优点,实现更广泛的应用。深度学习的不断进步将继续影响我们的生活和工作方式,为未来的科技发展开启更加广阔的前景。

2024-02-21 08:51:08 1001

原创 开源软件的影响力

随着信息技术的快速发展,开源软件已成为软件开发的趋势,并产生了深远的影响。然而,在使用开源软件时,需关注可能带来的问题,如安全风险和维护困难。通过开放源代码,开源软件促进全球开发者协作与交流,推动软件技术创新和发展。探讨开源软件的商业模式,以及如何结合商业软件,实现商业价值。分析开源软件的安全风险,强调加强安全措施保障系统安全性的重要性。开源软件的开放性也带来潜在的漏洞,需要定期更新和监测,确保系统不易受到攻击。以上方向可作为深入探讨开源软件影响力的起点,有助于更全面理解开源软件对技术和商业的影响。

2024-02-20 11:14:50 491

原创 使用 canvas 绘制海报

简化海报绘制, 使用 canvas 对海报绘制进行了封装, 降低了海报绘制开发成本难.简化海报绘制, 使用 canvas 对海报绘制进行了封装, 降低了海报绘制开发成本难.目前可进行海报背景, 图片, 文字, 二维码 绘制, 具体操作参考下文.目前可进行海报背景, 图片, 文字, 二维码 绘制, 具体操作参考下文.抽离完成公用海报分享组件,集成 APP 与 微信分享功能.海报绘制可直接使用分享组件也可直接使用绘制海报.海报绘制可直接使用分享组件也可直接使用绘制海报.

2024-02-20 10:31:47 889

原创 程序员为什么不喜欢关电脑?

例如,一些新兴的代码编辑器和集成开发环境(IDE)提供了更强大的功能和更好的用户体验,使程序员能够更加高效地进行编程工作。这些新兴的技术和工具正在逐渐改变程序员的工作方式,让他们能够在长时间的工作中保持高效和健康。在这个日新月异的时代,让我们期待着更多的创新技术和工具的出现,为程序员带来更加舒适、高效的工作体验。同时,也希望程序员们能够合理地利用这些工具和技术,保持良好的工作和生活状态,为科技的进步做出更大的贡献。例如,他们会适时休息,做做眼保健操,或者使用一些舒适的工作设备来减轻手腕的负担。

2024-02-20 10:04:37 385

原创 小崔静谧时光

小崔静谧时光。

2024-02-20 09:52:07 487

原创 vue 常用库

Day.js 是一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样。基于 NutUI 的抽奖组件库,助力营销活动和小游戏场景。一个优雅的图片裁剪插件。

2024-02-20 09:21:09 480

原创 ssh免密码登录配置方法

mac 免密登录 ssh

2022-01-29 20:47:03 2062

原创 React Navigation 初探 - Tab navigation

React Navigation 初探 - Tab navigation在手机应用中最参见的导航是 tab-based navigation, 在屏幕底部或者导航栏下面添加选择项卡.主要使用 createBottomTabNavigator.也可以使用 createMaterialBottomTabNavigator和 createMaterialTopTabNavigator添加选项卡.使用前需要先安装 @react-navigation/bottom-tabs:npm: npm install

2021-08-17 09:50:09 470

原创 React Navigation 初探 - 自定义导航按钮

React Navigation 初探 - 标题按钮在导航栏添加一个按钮在标题左边或右边放置按钮时最常见. 让我们在标题右边添加一个按钮(一个屏幕总难以触碰的位置)function StackScreen() { return ( <Stack.Navigator> <Stack.Screen name="Home" component={HomeScreen} options={{ head

2021-08-16 15:48:43 743

原创 React Navigation 初探 - 配置标题栏

React Navigation 初探 - 配置标题栏设置标题Screen 组件接收一个 options 属性, 它是一个对象或一个返回对象的函数. 它包含了各种配置项, 比如我们用于设置标题的 title.function StackScreen() { return ( <Stack.Navigator> <Stack.Screen name="Home" component={HomeScreen} opt

2021-08-16 15:12:17 652

原创 React Navigation 初探 - 页面传值

React Navigation 初探 - 页面传值我们已知如何创建堆栈导航器和页面之间的跳转,接下来我们将学习页面间如何进行传值.页面传值只要分为两部分:通过将参数作为 navigation.navigate 函数的第二个参数放入对象中,将参数传递给路由:navigation.navigate('RouteName', { /* params go here */ })跳转页面中读取数据:route.params.我们建议您传递的参数是 JSON 可序列化的.在 Snack 中尝试f

2021-08-11 16:29:13 1103

原创 React Navigation 初探 - 页面跳转

React Navigation 初探 - 页面跳转在网页中页面跳转:<a href="details.html">Go to Details</a>或者另一张写法<a onClick={() => { window.location.href = 'details.html'; }}>Go to Details</a>在 navigation 中我们会做一些类似后者操作,通过 navigation 一些属性实现页面跳

2021-08-11 15:08:41 755

原创 React Navigation 初探 - 创建 native stack navigator

React Navigation 初探 - 创建 native stack navigator安装 @react-navigation/native-stack上一章节我们安装的是导航器的构建模块和基础模块, React Navigation 中的每个 navigator 都有自己库, 使用native stack navigator我们需要安装@react-navigation/native-stack :npm: npm install @react-navigation/native-stack

2021-08-11 14:41:45 717

原创 React Navigation 初探 - 安装

React Navigation 初探 - 安装版本要求React Navigation 6 需要 react-native@0.63.0 以及以上版本;如果使用了 Expo, SDK 版本应为 41 以及以上.安装安装 react-navigation需要在项目安装必须的包npm 安装: npm install @react-navigation/nativeYarn 安装: yarn add @react-navigation/native安装 react-native-sc

2021-08-11 14:06:45 377

原创 基于 SwiftUI 的轮播图

基于 SwiftUI 的轮播图/// 创建轮播图/// - Parameter imagesUrl: 显示图片地址数据/// - Parameter spacing: 图片间距(可选)/// - Parameter cornerRadius: 图片圆角(可选)/// - Parameter isAuto: 是否自动播放(可选)/// - Parameter imageTapGesture: 图片点击回调XGCycleScrollView(imagesUrl: [], spacing: 12,

2021-08-04 16:36:36 81

转载 搜狐视频iOS团队 Objective-C 编码规范

搜狐视频iOS团队 Objective-C 编码规范介绍团队中长期以来存在各人不同的编码方式和习惯,导致代码中模块编码风格迥异,降低了可读性和维护性,经团队决定由张科、李红力编写这份规范。待定稿后务必遵守相关约定,这能使团队编码风格趋于一致,也有助于养成良好的代码习惯。目录命名基本原则命名类和协议命名头文件命名方法命名存取方法命名委法集合操作类方法命名属性和实例变量数命名常量命名通知图片命名注释文件注释代码注释代码格式每一行的最大长度空格函数的书

2021-04-21 09:53:54 144

原创 逐步实现 JSON 解析类

逐步实现解析库主流 JSON 解析库Codable简单应用Model 类定义自定义键名解析方式使用特殊处理字段设置默认值或者缺少字段处理主流 JSON 解析库SwiftyJSON ObjectMapperHandyJSONJSONEncoderMJExtensionYYModel…CodableCodable Swift 4 带来的新特性,是苹果官方提供的一套用于 JSON 解析的协议。Codable 其实是一个组合协议,由 Decodable 和 Encodable 两个协议组

2021-03-25 13:57:03 570

原创 iOS 开发常用三方类库

1. IQKeyboardManagerIQKeyboardManager是iOS中解决键盘弹起遮挡UITextField/UITextView的一种很实用的工具。无需输入任何代码,不需要额外的设置。使用IQKeyboardManager的你只需要将源文件添加到项目。2.AFNetwokingAFNetworking是一个为 iOS 和 Mac OSX 制作的令人愉快的网络库,它建立在URL 装载系统框架的顶层,内置在Cocoa里,扩展了强有力的高级网络抽象。它的模块架构被良好的设计,拥有丰富的

2021-03-24 17:02:39 565

原创 下拉框(select),可以多选,带有分组搜索功能

FSelect使用实际效果使用教程实际效果使用教程FSelect文件下载 FSelect 将 fSelect.css 与 fSelect.js 拖入项目需要引入 fSelect.css 与 fSelect.js 文件<link href="fSelect.css" rel="stylesheet" type="text/css"><script src="fSelect.js"></script><!doctype html>&lt

2021-03-24 16:41:00 1843 1

原创 动态修改应用图标

动态修改应用图标拖入图标文件配置 Info.plist文件代码去掉更换icon时的弹框动态修改图标是在不重新安装应用的前提下修改 icon 应用图标,在一些节日时可以为了营造氛围临时修改应用图标,动态修改图标避免了应用提交审核,重新安装的麻烦。/// 该功能目前仅支持 iOS 10.3 以上版本,参考 API:extension UIApplication { // If false, alternate icons are not supported for the current p

2021-02-04 15:01:27 300

原创 开发中常用类扩展

源码UILabel设置字体和颜色 /// 设置 Label 属性 /// - Parameters: /// - text: 文本内容 /// - font: 字体 /// - color: 字体颜色 public func cxg_setAttribute(_ text: String? = nil, font: UIFont, textColor color: UIColor) { }加载 HTML /// 加载 HTML 标签

2020-12-01 11:18:47 192

原创 iOS 获取系统,APP 部分信息 设备型号 (iphone12)

开放中时长会需要收集一些手机设备信息以及 app 版本信息,列举了比较常见的几种信息,持续更新!//// CXGSystemInfo.swift//// Created by CuiXg on 2018/7/21.// Copyright © 2018年 CuiXg. All rights reserved.//import UIKitclass CXGSystemInfo { /// 手机获取设备名称 class var deviceName: Strin.

2020-11-02 14:18:10 494

原创 iOS 调用系统自带导航功能实现

项目中需要用到导航功能,接收前人项目引用的高德地图,原本简单的项目因为引入高德导航使得包变大,决定使用系统自带的地图导航功能替代原有的导航.使用系统导航需要用到 MapKit 框架.通过调用 ‘MKMapItem.openMaps(with: [items], launchOptions: [options])’ 方法调起系统地图的导航功能.items 是一个数组,标记要经过的地方坐标 MKMapItem 类型,options 参数设置.具体使用如下:let startItem = MKMapI.

2020-11-02 14:11:54 645

原创 1024勋章

我也想要 1024 勋章程序员们,嗨起来,今天无加班!

2020-10-24 10:30:53 107

原创 给 view设置渐变色背景,生成渐变 UIImage

通过 CAGradientLayer 实现 let gradientLayer = CAGradientLayer() gradientLayer.colors = [UIColor(R: 241, G: 173, B: 17, alpha: 1).cgColor, UIColor(R: 210, G: 166, B: 8, alpha: 1).cgColor, UIColor(R: 237, G: 178, B: 60, alpha: 0).cgColor] grad

2020-10-24 10:24:44 454

原创 ios开发中object-c中UTF-8 和 GBK 的 NSString 相互转化的方法

应用都要遇到一个很头疼的问题:文字编码,汉字的 GBK 和 国际通用的 UTF-8 的互相转化稍一不慎,就会满屏乱码。下面介绍 UTF-8 和 GBK 的 NSString 相互转化的方法NSStringEncoding enc = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);char* c_test = “北京”;int nLen = strle

2020-10-17 22:46:38 717

原创 UITableView 重用池原理

重用实现分析查看UITableView头文件,会找到NSMutableArray*  visiableCells,和NSMutableDictnery* reusableTableCells两个结构。visiableCells内保存当前显示的cells,reusableTableCells保存可重用的cells。TableView显示之初,reusableTableCells为空,那么tableView dequeueReusableCellWithIdentifier:CellIdentif

2020-10-17 22:45:08 222

原创 停用 iOS 模拟器输出大量的系统调试数据

在 Xcode 中,iOS 模拟器会输出大量的系统调试数据,为了停用这个功能,您可以打开对应 Target 的 Scheme,定位到 Run(Debug) 一栏的 Arguments 当中,在 Environment Variables 中加入 OS_ACTIVITY_MODE = DISABLE 这一条数据,即可屏蔽模拟器输出系统调试数据。...

2020-10-17 22:41:20 95

原创 通过 UIBezierPath 与 CAShapeLayer 为 UIView 添加边框

通过贝塞尔曲线与 CAShapeLayer 为 View 添加虚线边框,可设置宽度,颜色,圆角等代码如下: /// 为视图添加虚线边框 /// /// - Parameters: /// - view: 要添加边框的视图 /// - size: 视图 size /// - cornerRadius: 视图圆角 默认:10 /// - lineWidth: 边框宽 默认: 1 /// - lineColor: 边框颜色 默认: black

2020-10-17 22:24:59 553

原创 swift 实现星级评分

许多App都会有评价功能,这个时候或许会需要实现星级评分,下面我们来简单的实现一个星级评分功能。思路通过添加图片形式实现星级打分功能.创建两个视图,其中一个添加灰色星星图片,另一个添加橘色星星图片.橘色星星视图覆盖灰色星星视图,通过修改橘色星星视图的宽度实现评分的展现.创建一个继承于 UIView 的类,作为星级打分的显示视图创建灰色星星视图,并添加到父视图.创建橘色星星视图,添加到父视图,保证橘色视图覆盖灰色星星视图.通过修改橘色星星视图宽度实现评分.可通过手势等方式实现打分功能.

2020-10-17 22:22:54 847

原创 多台电脑共同管理hexo博客

使用hexo搭建博客,如果换了电脑怎么更新博客?如果你有备份源文件那还好,但是每次都要备份感觉太麻烦了。这里介绍一种方法就是使用github分支。一个分支用来存放Hexo生成的网站原始的文件,另一个分支用来存放生成的静态网页。网上也有其他的方法,大家可以去搜一下,自己看看哪种适合自己,我用这种方法一方面我git命令也不太熟,所以想多写写,多学学。先删除主题文件下的.git文件,可以直接删除或者执行下面的命令$ rm -rf .git然后在本地博客文件夹下边依次输入以下指令(部分指令因为有提示

2020-10-17 22:19:55 444

原创 Carthage 安装以及初步实用

本人从事 iOS 开发已有5年多,用 swift 开发也有一年多的时间了,此前一直利用 cocopods 管理三方框架和依赖,最近了解到 Carthage 这个工具,本着学习的态度对这工具进行了了解.官方地址: https://github.com/Carthage/CarthageCarthage 简介Carthage 类似于 CocoaPods,为用户管理第三方框架和依赖,但不会自动修改项目文件和生成配置Carthage 是去中心化的依赖管理工具,安装依赖时不需要去中心仓库获取 Cocoa

2020-10-17 22:17:25 327

原创 禁止 UIButton 连续点击

UIButton是我们iOS开发中常用的控件,连续/抖动点击造成数据请求或其它操作重复执行也是用户使用中常发生的 !解决这一问题的方法很多,简单总结了一下.使用UIButton的enabled或userInteractionEnabled使用UIButton的enabled属性,点击后将enabled设置为 false, 进行任务处理,完成任务后再将其设置为 false.@objc func btnClick(_ sender: UIButton) { sender.isEnabled =

2020-10-17 22:02:31 336

原创 消除 UINavigationBar 底部黑线

1. 通过设置背景图片与阴影图片清除// 在自定义 UINavigationController 内self.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)self.navigationBar.shadowImage = UIImage()2. 通过遍历 UINavigationBar 子视图,找到对应的 View,设置为隐藏extension UINavigationBar { func h

2020-10-17 21:56:35 531

原创 UITableView性能优化的几点建议

TableView是App里最常用的一个UI控件了,优化TableView性能,使我们提高用户体验必须要考虑的问题。提前计算并缓存好高度,因为heightForRow最频繁的调用。- (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath;异步绘制,遇到复杂界面,性能瓶颈时,可能是突破口。滑动时按需加载,这个在大量图片展示,网络加载时,很管用。(SD

2020-10-17 21:53:45 235

使用 canvas 绘制海报

简化海报绘制, 使用 canvas 对海报绘制进行了封装, 降低了海报绘制开发成本难.

2024-02-20

swift JSON解析

Codable 协议实现 JSON 解析,可设置默认值,为空处理。

2021-03-25

下拉框(select),可以多选,带有分组搜索功能

下拉框(select),可以多选,带有分组搜索功能

2021-03-24

禁止 UIButton 连续点击

UIButton是我们iOS开发中常用的控件,连续/抖动点击造成数据请求或其它操作重复执行也是用户使用中常发生的 !解决这一问题的方法很多,简单总结了一下.

2020-10-17

CXGSignature.zip

使用拖动手势记录获取用户签名路径. 当用户初次接触屏幕,生成一个新的UIBezierPath,并加入数组中.设置接触点为起点.在手指拖动过程中为UIBezierPath添加线条,并重新绘制,生成连续的线. 手指滑动中不断的重新绘制,形成签名效果. 签名完成,转化为UIImage保存.

2020-10-16

会旋转的 UIImageView

通过给继承与 UIImageView 的类 CXGImageView 添加 CABasicAnimation 转动动画,实现播放器图片转动效果.

2020-10-13

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除