易搜网站建设怎么查一个网站的域名

web/2025/10/9 8:36:03/文章来源:
易搜网站建设,怎么查一个网站的域名,四川省凉亭建设工程有限公司网站,软装设计的意义先看例子 每个弹幕的速度都是不一样的#xff0c;支持弹幕整体开始暂停。 如果弹幕实在是太多了#xff0c;有个缓冲队列#xff0c;不停的重试能否显示#xff0c;保证文字都能显示全#xff0c;并且每条都能显示。 实现是基于 CADisplayLink 实现的#xff0c;如此来…先看例子 每个弹幕的速度都是不一样的支持弹幕整体开始暂停。 如果弹幕实在是太多了有个缓冲队列不停的重试能否显示保证文字都能显示全并且每条都能显示。 实现是基于 CADisplayLink 实现的如此来说比直接搞个定时器来计算偏移丝滑简单的平移动画如下 import UIKitclass ViewController: UIViewController {let squareView UIView()override func viewDidLoad() {super.viewDidLoad()// 创建 CADisplayLink 对象let displayLink CADisplayLink(target: self, selector: #selector(update))// 将视图控制器添加到 displayLink 中displayLink.add(self, for: .common)// 设置视图属性squareView.frame CGRect(x: 50, y: 50, width: 100, height: 100)squareView.backgroundColor UIColor.red.withAlphaComponent(0.5)view.addSubview(squareView)}objc func update(_ displayLink: CADisplayLink) {// 在每一帧更新时移动视图squareView.frame.origin.x 5} }在这个基础版本上稍微改了改就变成如下代码 import Foundation import UIKitclass XDanMu {var row: Int 0var label: UILabel UILabel()var speed: CGFloat 0var isMe: Bool false }class XDanMuView: UIView {var displayLink: CADisplayLink?var lineHeight: CGFloat 26var gap: CGFloat 20var minSpeed: CGFloat 1var maxSpeed: CGFloat 2var isPause: Bool falsevar danmus: [XDanMu] []var danmuQueue: [(String, Bool)] []var timer: Timer?func start() {displayLink CADisplayLink(target: self, selector: #selector(update))displayLink?.add(to: RunLoop.current, forMode: .common)timer Timer.scheduledTimer(timeInterval: 0.1, target: self, selector: #selector(handleDanMuQueue), userInfo: nil, repeats: true)}objc func handleDanMuQueue() {if danmuQueue.isEmpty {return}let danmu danmuQueue.removeFirst()addDanMu(text: danmu.0, isMe: danmu.1)}objc func addDanMu(text: String, isMe: Bool) {let danmu XDanMu()danmu.label.frame.origin.x self.frame.size.widthdanmu.label.text textdanmu.label.sizeToFit()if isMe {danmu.label.layer.borderWidth 1}var linelasts: [XDanMu?] []let rows: Int Int(self.frame.size.height / lineHeight)for _ in 0..rows {linelasts.append(nil)}for d in danmus {if d.row linelasts.count {break}if linelasts[d.row] ! nil {let endx danmu.label.frame.origin.xlet targetx linelasts[d.row]!.label.frame.origin.xif endx targetx {linelasts[d.row] d}} else {linelasts[d.row] d}}var isMatch falsefor index in 0..linelasts.count {if let d linelasts[index] {let endx d.label.frame.origin.x d.label.frame.size.width gapif endx self.frame.size.width {danmu.row indexvar ms self.frame.size.width / endx * d.speedms CGFloat.minimum(ms, maxSpeed)danmu.speed CGFloat.random(in: minSpeed...ms)isMatch truebreak}} else {danmu.row indexdanmu.speed CGFloat.random(in: minSpeed...maxSpeed)isMatch truebreak}}if isMatch false {danmuQueue.append((text, isMe))return}danmu.label.frame.origin.y lineHeight * CGFloat(danmu.row)self.addSubview(danmu.label)self.danmus.append(danmu)}objc func update(_ displayLink: CADisplayLink) {if isPause true {return}// 在每一帧更新时移动视图for index in 0..danmus.count {let danmu danmus[index]danmu.label.frame.origin.x - danmu.speedif danmu.label.frame.origin.x -danmu.label.frame.size.width {danmu.label.removeFromSuperview()danmus.remove(at: index)break}}} } 再找个需要使用的地方加入如下使用的代码即可实现上图的效果 override func viewDidLoad() {super.viewDidLoad()var danmuView: XDanMuView XDanMuView()danmuView.frame .init(x: 0, y: 100, width: self.view.frame.size.width, height: self.view.frame.size.height - 200)self.view.addSubview(danmuView)// 配置项danmuView.minSpeed 1danmuView.maxSpeed 2danmuView.gap 20danmuView.lineHeight 30// 启动弹幕danmuView.start()// 启动一个定时器灌弹幕timer Timer.scheduledTimer(timeInterval: 0.4, target: self, selector: #selector(addDanMu), userInfo: nil, repeats: false) }objc func addDanMu() {let interval CGFloat.random(in: 0.3...1.0)Timer.scheduledTimer(timeInterval: interval, target: self, selector: #selector(addDanMu), userInfo: nil, repeats: false)var text for _ in 0...Int.random(in: 1...30) {text 嘿}for _ in 0...Int.random(in: 1...2) {danmuView.addDanMu(text: text, isMe: Bool.random())} }文本的字体自行根据需求修改目前是没有增加样式跟颜色。 完整工程传送门 github gitee

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/89535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业网站优化分为nodejs 做视频网站

在Python编程中,hasattr()函数是一个非常有用的内置函数之一,用于检查对象是否具有指定的属性或方法。这个函数能够帮助我们在运行时动态地检查对象的属性和方法,从而避免由于缺少属性或方法而导致的异常。本文将深入探讨Python中的hasattr()…

企业做网站的费用怎么入账wordpress整合论坛

随着科技的飞速发展,编程已经成为了当今世界的一项重要技能。为了培养更多的编程人才,蓝桥杯官网显示,蓝桥杯青少年创意编程大赛应运而生。作为国内有影响力的少儿编程赛事之一,蓝桥杯青少年创意编程大赛旨在激发青少年对编程的兴…

多语种 小语种网站推广方法做淘宝网站代理

文章目录 数据卷概念数据卷实现机制数据卷特性数据卷操作数据卷挂载通用命令匿名挂载具名挂载数据卷继承容器数据卷只读容器数据卷读写-默认 总结 数据卷概念 为了很好的实现数据保存和数据共享,Docker提出了Volume这个概念,简单的说就是绕过默认的联合文…

宠物网站建设策划报告高端建站和普通建站有哪些不同

随着WordPress 6.3发布,本文总结了该版本的性能改进。虽然WordPress 6.2显著提高了Core的加载时间性能,树立了很高的标准,但WordPress 6.3性能改进已经超越了这些结果:根据进行的性能基准测试,与WordPress 6.2相比&…

网站商城建设合同免费下载WordPress招标采购

网络基础知识 桥接网络 桥接网络是一种网络设计技术,其目的是将两个或多个网络段连接在一起,使它们在逻辑上表现为单个网络。这通过使用网络桥来实现,网络桥工作在数据链路层(第2层),只关心MAC地址&#…

网站服务器和网站备案佛山最好的网站建设

vue elementUI form组件动态添加el-form-item rules且支持添加自定义校验方法 组件动态添加el-form-item并且动态添加rules的方法可以参考博客:添加自定义校验方法validatePassFun 组件动态添加el-form-item并且动态添加rules的方法可以参考博客: vue e…

苏州做网站建设公司做网站和做软件哪个难

文件目录 Proxying in Development http-proxy-middleware fetch_get fetch 是否成功 axios 全局处理 antd UI库 更改主题 使用css module的情况下修改第三方库的样式 支持sass & less Proxying in Development 在开发模式下,如果客户端所在服务器跟后…

区域教育联盟网站建设做金融的免费发帖的网站有哪些

华为云云耀云服务器L实例评测 | 实例使用教学之软件安装:华为云云耀云服务器环境下安装 Docker 介绍华为云云耀云服务器 华为云云耀云服务器 (目前已经全新升级为 华为云云耀云服务器L实例) 华为云云耀云服务器是什么华为云云耀云…

常熟建设银行 招聘网站网盟推广合作

目录 1.protostuff 的 Maven 依赖 2.定义实体类 3.序列化工具类 ProtostuffSerializer 提供了序列化和反序列化方法 4.测试 利用 Jedis 提供的字节数组参数方法,如: public String set(String key, String value) public String set(byte[] key…

长春网站建设技术支持天元建设集团有限公司 伊永成 电话

概述 像 Stable Diffusion、Flux 这样的生成扩散模型,以及 Hunyuan 等视频模型,都依赖于在单一、资源密集型的训练过程中通过固定数据集获取的知识。任何在训练之后引入的概念——被称为 知识截止——除非通过 微调 或外部适应技术(如 低秩适…

南通网站制作推广建站网络

在 CSDN 这个技术交流的大舞台上,原力值不仅是个人活跃度的象征,更是开启更多权益与福利的钥匙。最近,我出于自身需求,一头扎进了提升原力值的研究中,经过多方探索与资料整理,现在就迫不及待地把这些干货分…

网站后台百度商桥代码哪里安装筑人才官网

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】【C详解】 类与对象 1、面向过程和面向对象初步认识 2、类的引入 3、类的定义 4、类的访问限定符及封装 4.1、访问限定符 4.2、封装 5、类的作用域 6、类的…

网站背景色代码谁有哪种浏览器网站免费的

第一章 C语言概述 1.1 C语言的发展史 1.1.1程序语言简述 1、机器语言 低级语言,又称二进制代码语言。一种使用0、1表示的二进制代码编写指令以执行计算机操作的语言。 特点:计算机可以直接识别,不需要进行任何翻译。 2、汇编语言 为了减…

济南微网站开发深圳建设集团有限公司地址

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

中国各大网站软件营销网站建设

jpa语法错误根据我在帮助团队和进行培训方面的经验,这是我遇到的一些陷阱/错误,它们在使用JPA的基于Java的系统中引起了一些问题。 需要一个公共的无参数构造函数 始终使用双向关联/关系 将OneToMany用于可能庞大的集合 需要一个公共的无参数构造函数…

网站优化注意事项广州免费孕检

在面向对象的软件开发中,中介者模式是一种重要的行为型设计模式,用于降低多个对象间通信的复杂性。通过提供一个中心化的对象来处理不同组件之间的交互,中介者模式使得组件间不必显式引用彼此,从而使其松散耦合、更易于维护。本文…

连云港网站建设的公司匠王红木在那个网站做众筹

目录 前言: 什么是React路由? 导航和页面切换 路由参数和动态路由 路由守卫和权限控制 总结 前言: React是一个流行的JavaScript库,用于构建用户界面。在使用React开发Web应用程序时,路由和导航是必不可少的功能…

建国内外网站有什么区别促销活动推广文案

深度聚类不仅继承了传统聚类算法的优点,在对高维和非线性数据的处理能力,以及自适应性和抗噪性方面也具有很大优势。 具体来说,结合深度学习的聚类算法通过利用深度神经网络的强大特征提取能力,自动学习和识别数据中的复杂结构和…

网站换域名怎么做公司网站建设企划书

1、理解使用对象完成数据组织的思路 1.1类和对象的基本理解 理解类:从现实世界到编程世界 类由三个部分组成:类名、类的属性、类的方法。类的定义实际上是描述事物的一种方法,在现实世界中,事物都是有属性和行为的。通过类&…

招代理商的网站农业生态园电商网站建设

在我的上一篇文章中: JPA –基本投影 –我已经提到了构建JPA投影的两种基本可能性。 这篇文章为您带来了更多示例,这次基于Querydsl框架。 注意,这里我指的是Querydsl版本3.1.1。 重塑构造函数表达式 看下面的代码: ... import …