L63C
码龄10年
关注
提问 私信
  • 博客:83,583
    83,583
    总访问量
  • 70
    原创
  • 1,248,433
    排名
  • 8
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:美国
  • 加入CSDN时间: 2014-10-23
博客简介:

wutao63的博客

查看详细资料
个人成就
  • 获得7次点赞
  • 内容获得4次评论
  • 获得17次收藏
  • 代码片获得227次分享
创作历程
  • 2篇
    2023年
  • 7篇
    2022年
  • 12篇
    2021年
  • 8篇
    2020年
  • 2篇
    2019年
  • 9篇
    2018年
  • 16篇
    2017年
  • 25篇
    2016年
成就勋章
TA的专栏
  • Flutter
    2篇
  • iOS
    50篇
  • 其他
    8篇
  • 开发基础
    1篇
兴趣领域 设置
  • 移动开发
    flutterreact native
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

356人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

iOS导航栏返回按钮

之所以取 self.viewControllers.last 的最后一个,因为可能控制addsubController ,有从subVC 跳转到其他的控制器。
原创
发布博客 2023.11.07 ·
138 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

flutter项目架构

【代码】flutter项目架构,多环境配置,打包,命名规范,代码规范
原创
发布博客 2023.03.10 ·
1058 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

Flutter多环境配置

Flutter多环境配置。区分开发,测试,预生产,生产环境
原创
发布博客 2022.07.21 ·
873 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Mac OS系统系统环境变量

目前苹果系统的更新,设置环境变量也有所变化,新版本的macOS Catalina开始,新用户的默认shell改为了zsh查看默认shell echo $SHELL如果是/bin/bashvim ~/.bash_profile编辑内容source ~/.bash_profile如果是/bin/zshsource ~/.zshrc编辑内容source ~/.zshrc...
原创
发布博客 2022.04.07 ·
559 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

使用KVC提取集合的部分元素,或简单运算

集合运算支持5中@avg, @count , @max , @min ,@sum5@interface Book : NSObject@property (nonatomic,copy) NSString* name;@property (nonatomic,assign) CGFloat price;@end@implementation Book@endBook *book1 = [Book new];book1.name = @"The Great Gastby";bo
原创
发布博客 2022.02.14 ·
973 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

类似今日头条的滑动标题,滚动标题

类似今日头条的滑动标题pod 'LCCPageView'//import LCCPageView fileprivate func setupUI() {// let titles = ["你好","爱上","颠覆","颠信"] let titles = ["你好","阿双方就开始","阿瑟","阿斯顿发","时代","你好","阿双方就开始","阿瑟","阿斯顿发"] let config = PageTitleConfig
原创
发布博客 2022.01.11 ·
1099 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

iOS横向表情键盘

横向表情键盘
原创
发布博客 2022.01.11 ·
810 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

iOS异步变成同步

异步改同步
原创
发布博客 2022.01.11 ·
1974 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

IOS 关于锁

前言为什么需要锁:多条线程存在同时操作(删、查、读、写)同一个文件or对象or变量。如果不是同时或者不是同一个那就不用加锁了。关键变量:必须是“同时”,“同一事物”自旋锁OSSpinLock个人理解:就是一直等,忙等,一直while 到锁被解开,自旋锁不会让等待的线程进入休眠状态已经废弃,容易出现优先级反转关于优先级反转:现在有2个高优先级线程A,一个低优先级线程B情况1:A先获得锁,执行A线程的任务,然后B获取锁,执行B的任务。正常情况2:B先获得锁,因为B是低优先级线程,这个时候系统
原创
发布博客 2022.01.11 ·
1370 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

swift 播放Gif图片

// 1.加载Gif图片, 并且转成Data类型 guard let path = Bundle.main.path(forResource: "demo.gif", ofType: nil) else { return } guard let data = NSData(contentsOfFile: path) else { return } // 2.从data中读取数据: 将data转成CGImageSource对象
原创
发布博客 2021.12.10 ·
1017 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Lable描边

override func drawText(in rect: CGRect) { // 1.获取上下文 let context = UIGraphicsGetCurrentContext() // 2.给上下文线段设置一个宽度, 通过该宽度画出文本 context?.setLineWidth(5) context?.setLineJoin(.round) context?.setTextDra
原创
发布博客 2021.12.10 ·
1440 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Swift 使用协议加载Xib

import UIKitprotocol NibLoadable {}extension NibLoadable where Self : UIView { static func loadFromNib(_ nibname : String? = nil) -> Self { let loadName = nibname == nil ? "\(self)" : nibname! return Bundle.main.loadNibNamed(lo
原创
发布博客 2021.12.08 ·
1577 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

粒子动画,做礼物,雪花等特效

extension Emitterable where Self : UIViewController { func start() { // 1.创建发射器 let emitter = CAEmitterLayer() // 2.设置发射器的位置 emitter.emitterPosition = CGPoint(x: view.bounds.width * 0.5, y: -60) .
原创
发布博客 2021.12.08 ·
307 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

一种使用协议代替NSNotificationCenter 的方案

写在前面关于NSNotificationCenter 大家并不陌生,今天我们就来简单的聊聊。NSNotificationCenter and Delegate 都是可以做到通知去做某事,NSNotificationCenter 可以通知多个,Delegate 只能通知一个。这是Notification的优点,但同时也是它的缺点。在多人合作的项目中,我们经常会出现一些尴尬的情况,发出一个通知后,数据就被其他类监听,然后数据就被莫名其妙的修改了,这种问题如果开始没有想到是通知的锅,就很难排查了发出通知
原创
发布博客 2021.11.29 ·
915 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

AWSS3文件断点下载,分片上传,断点续传

LCCFileService支持断点续传支持断点下载大文件分片上传最大同时上传,下载队列可控上传,下载,进度多种方式监听可以自定义下下载,上传器(目前是封装的亚马逊AWSS3)秒传,秒下载(通过MD5和FileKey,判定文件是否已经上传或者下载,如果是,直接进行copy 操作)pod 'LCCFileService'github地址上传第一步:添加下载器 _netService = [[LCFileNetService alloc] init]; [_netService
原创
发布博客 2021.11.29 ·
5620 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

判断手机的的IP在不在中国

开源库:LCCChinaIPpod 'LCCChinaIP'1. 获取IP地址获取IP地址见:1.加载中国地址
原创
发布博客 2021.11.24 ·
815 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

获取手机的IP地址

swift/// 获取本地IP 地址,可能是局域网的地址 @objc public static func getIphoneIpAddress() -> String{ var addresses = [String]() var ifaddr : UnsafeMutablePointer<ifaddrs>? = nil if getifaddrs(&ifaddr) == 0 { var ptr =
原创
发布博客 2021.11.24 ·
2791 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

自定义组件化Pod资源加载

第一步:添加资源将资源放到LCCChinaIP/Assets目录文件下,我这里添加的资源为IPSource.bundle我的工程叫:LCCChinaIP,通过pod lib create LCCChinaIP 会自动生成这样的一个文件夹第一步:配置podspec s.resource_bundles = { 'LCCChinaIP' => ['LCCChinaIP/Assets/*'] }这样的配置会在安装包理自动生成一个LCCChinaIP.bundle 资源包,里面就
原创
发布博客 2021.11.24 ·
984 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

关于OC+Swift 混编的单元测试的配置

https://medium.com/if-let-swift-programming/ios-tests-working-with-objective-c-and-swift-class-together-aaf40f91a27c
原创
发布博客 2021.05.14 ·
236 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

iOS苹果原生系统推送通知

准备工作下载推送测试程序SmartPush ,并用xcode 运行安装创建工程对应的推送证书,一个是Apple Push Notification service SSL (Sandbox) 和Apple Push Notification service SSL (Sandbox & Production),前者只能给开发者用Xcode安装的app推送,后者可以给所有app推送开发获取权限并申请device token- (void)notification:(UIApplica
原创
发布博客 2021.01.06 ·
1159 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏
加载更多