当前位置: 首页 > news >正文

我想做一个小网站搞页游该怎么做建网站找哪个公司

我想做一个小网站搞页游该怎么做,建网站找哪个公司,bbs网站,wordpress屏蔽ip访问什么是防抖,为什么要防抖? 比如我们在文档在线编辑中修改文档内容,总不能打一个字就发送一次更新请求吧,用户疯狂点击一个按钮,总不能一直触发按钮的逻辑吧。防抖被用于避免频繁触发的事件。 Swift实现防抖代码&…

什么是防抖,为什么要防抖?

比如我们在文档在线编辑中修改文档内容,总不能打一个字就发送一次更新请求吧,用户疯狂点击一个按钮,总不能一直触发按钮的逻辑吧。防抖被用于避免频繁触发的事件。

Swift实现防抖代码:

import Foundationclass Debouncer {var delay: TimeIntervalvar timer: Timer?var closure: (() -> Void)?init(delay: TimeInterval) {self.delay = delay}func debounce(closure: @escaping () -> Void) {self.closure = closuretimer?.invalidate()timer = Timer.scheduledTimer(timeInterval: delay, target: self, selector: #selector(fire), userInfo: nil, repeats: false)}@objc func fire() {closure?()}
}let debouncer = Debouncer(delay: 0.5)func action() {print("Debounced action executed")
}debouncer.debounce {action()
}debouncer.debounce {action()
}

什么是图片预加载,为什么要预加载,为什么要拼接?

图片要被渲染到屏幕上,要经历解码的阶段,图片一解码就会大很多,几MB的解码之后可能占几十MB的内存,在Swift中,图片在UIImageView设置.image属性的时候才会被解码,我们想要提前加载的话就要用UIGraphicsImageRenderer来获取图像,还有一种情况就是尺寸非常大的图片,比屏幕都大,直接解码渲染就会占很大的内存,我们还可以在预加载中对图片尺寸进行一个处理,避免内存的浪费,多张图片的拼接显示可以减少渲染次数,减少对象的创建,能提高性能。

下面是Swift代码:

import UIKitclass ViewController: UIViewController {lazy var imageView: UIImageView = {let imageView = UIImageView(frame: self.view.frame)return imageView}()override func viewDidLoad() {super.viewDidLoad()let imageUrls = [URL(string: "https://images.pexels.com/photos/356830/pexels-photo-356830.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2")!,URL(string: "https://images.pexels.com/photos/356830/pexels-photo-356830.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2")!]let dispatchGroup = DispatchGroup()var images = [UIImage]()for url in imageUrls {dispatchGroup.enter()URLSession.shared.dataTask(with: url) { data, _, error indefer { dispatchGroup.leave() }if let data = data, let image = UIImage(data: data) {images.append(image)}}.resume()}dispatchGroup.notify(queue: .main) {if let combinedImage = self.combineImages(images: images) {self.imageView.image = combinedImageself.view.addSubview(self.imageView)}}}func combineImages(images: [UIImage]) -> UIImage? {let renderer = UIGraphicsImageRenderer(size: self.view.frame.size)let combinedImage = renderer.image { context invar currentX = 0.0for image in images {image.draw(at: CGPoint(x: currentX, y: 0))currentX += image.size.width}}return combinedImage}
}

本文的内容就到这里啦,喜欢博主的可以点点关注。

http://www.bjxfkj.com.cn/article/103385.html

相关文章:

  • 民政网站建设情况汇报如何查看网站收录情况
  • 网站建设的软件是哪个百度下载app安装
  • 网站接入支付宝在线交易怎么做微信朋友圈广告在哪里做
  • 网站制作费用明细网络营销有什么特点
  • 简述网站的四种常见结构怎么拿到百度推广的代理
  • 做调研有哪些网站seo文章是什么意思
  • 怎么建立国外网站广州百度关键词推广
  • 晋中路桥建设集团有限公司网站河南郑州做网站的公司
  • wordpress 时间线页面宁波优化系统
  • 宁波企业自助建站系统广西网站建设制作
  • 网站建设双十一seo人员招聘
  • 论坛建站哪个比较好谷歌外贸网站
  • 网站开发学校 优帮云长春网站优化咨询
  • wordpress不能登录界面seo短视频网页入口引流
  • 福州 网站制作 外贸青岛百度seo排名
  • 青岛网站域名备案查询网文网站排名
  • 如何做网络营销推广预算郑州搜索引擎优化公司
  • 做鸡蛋仔冰淇淋店网站seo培训网
  • 高端的培训行业网站开发网络营销首先要
  • wordpress模块怎么设置在最上层seo国外推广软件
  • windows和linux 做网站企业网站快速排名
  • 防制网站怎么做学生个人网页制作html
  • 阐述建站流程培训心得体会500字
  • 网站开发培训成都软文营销案例文章
  • 美女做爰视频免费安全的网站北京网站推广
  • 建设部网站造价注册网站后台管理系统
  • 番禺商城网站建设培训课程网站
  • 网站制作模板代码长春网站搭建
  • 个人网站公司网站区别经营区别整站优化cms
  • 多种大连网站建设seo引流什么意思