使用 SwiftUI 制作按钮闪烁动画

2024-01-16

如何在 SwiftUI 中制作边框颜色变化动画。 这是 UIKit 的代码

extension UIButton{
    func blink(setColor: UIColor, repeatCount: Float, duration: Double) {
        self.layer.borderWidth = 1.0
        let animation: CABasicAnimation = CABasicAnimation(keyPath: "borderColor")
        animation.fromValue = UIColor.clear.cgColor
        animation.toValue = setColor.cgColor
        animation.duration = duration
        animation.autoreverses = true
        animation.repeatCount = repeatCount
        self.layer.borderColor = UIColor.clear.cgColor
        self.layer.add(animation, forKey: "")
    }
}

我在使用 SwiftUI 项目实现重复文本时遇到了类似的问题。答案看起来太先进了,我无法实施。经过一番搜索和研究。我设法反复闪烁我的文字。对于稍后看到这篇文章的人,您可以使用以下方法尝试此方法withAnimation{} and .animation().

Swift 5

@State private var myRed = 0.2
@State private var myGreen = 0.2
@State private var myBlue = 0.2

var body:some View{
    
Button(action:{
 //
}){
 Text("blahblahblah")
}
.border(Color(red: myRed,green: myGreen,blue: myBlue))
.onAppear{
    withAnimation{
       myRed = 0.5
       myGreen = 0.5
       myBlue = 0
    }
}
.animation(Animation.easeInOut(duration:2).repeatForever(autoreverses:true))
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 SwiftUI 制作按钮闪烁动画 的相关文章

  • iOS 14 无效的框架尺寸(负或非有限)

    我的应用程序使用 GeometryReader 和一些填充来设置 NavigationView 内的视图框架尺寸 从 iOS 14 开始 我收到以下错误消息 框架尺寸无效 负或非有限 这是一些要测试的示例代码 import SwiftUI
  • Open 方法仅使用完整路径打开文件 C++

    如果我写入完整路径 完整路径 roots txt 文件将打开 如果我只写文件名 roots txt 文件将无法打开 然而 roots txt 与 main cpp 位于同一文件夹中 我应该检查 XCode 上的任何设置吗 这是代码 stri
  • 将自定义数据包含到 iOS 故障转储中

    你好 堆栈溢出 有一个简单的问题要问您 当我的应用程序在用户的设备上崩溃时 是否可以将自定义错误数据嵌入到自动生成的 iOS 故障转储中 例如 我的 SQlite 数据库由于某种原因无法运行 例如 数据库文件已损坏 我无法从这个错误中恢复
  • Objective-C UILabel 作为超链接

    我正在尝试做一个UILabel一个链接UIWebView 我怎样才能做一个UILabel作为超链接 您可以使用 UITapGestureRecognizer 它将实现与您想要的类似的功能 UILabel myLabel UILabel al
  • dyld:无法加载插入的库

    当我尝试运行 UI 和单元测试时 出现异常 dyld 无法加载插入的库 private var containers Bundle Application AutoTestingApp app Frameworks IDEBundleInj
  • 从按钮执行 Segue 时应用程序冻结

    我的故事板中有一个按钮 它呈现一个带有模式序列的视图控制器 每次按下此按钮时 应用程序都会冻结 没有崩溃 也没有错误消息 prepareForSegue被调用 所有应该存在的视图控制器都在代码中prepareForSegue 但它们不会出现
  • 如何在 Swift 中从 UIColor 获取 RGB 代码(INT)[重复]

    这个问题在这里已经有答案了 我想在 Swift 中获取 UIColor 的 RGB 值 let swiftColor UIColor red 1 green 165 255 blue 0 alpha 1 println RGB Value
  • 用户验证 Facebook 后未调用应用程序打开 Url 方法

    我已将 ios 应用程序中的 facebook 升级到 3 0 并使用提供的代码https developers facebook com docs howtos login with facebook using ios sdk http
  • 构建错误重复符号 arclite.o

    我正在尝试构建我的 Xcode 项目 但收到下面显示的错误 请帮我解决这个错误 提前谢谢您 duplicate symbol non lazy classes in Applications Xcode app Contents Devel
  • ReactiveCocoa 将 SignalProducers 合二为一

    我正在使用 ReactiveCocoa 并且我有几个 SignalProducers let center NSNotificationCenter defaultCenter let signalProducer1 center rac
  • 如何向标准 UIButton 添加徽章? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 是否可以在标准中添加看起来标准的徽章UIButton 如果不支持半原生 那么实现此目的最简单的方法是什么 示例图片 这是 Sascha
  • UItextView 背景颜色 Linespacing 区域太

    我正在尝试在 UITextView 中复制文本突出显示 不是搜索文本突出显示 但我也被行间距的颜色所困扰 我该如何纠正这个问题 现在的情况 期望的结果 我已将以下属性添加到我的 UiTextview 的属性文本中 对于段落行间距 我使用了以
  • 在实例化对象之前是否可以检查故事板中是否存在标识符?

    在我的代码中我有这一行 但我想知道是否有办法检查是否 一些控制器 在我将它与 一起使用之前就存在实例化ViewControllerWithIdentifier 方法 如果标识符不存在 则应用程序崩溃 如果没有好的方法 这并不是一个大问题 我
  • UIView 圆角 - Swift 2.0?

    我会尝试将一些项目更新到 Swift 2 0 我有一个视图 左上角有一个圆角 在 Swift 没有警告 没有错误 只是没有圆角 这就是它在 Swift let maskPath UIBezierPath roundedRect conten
  • 如何使用 RX 应用宽限时间?

    我有一个Observable
  • 如何在 UICollectionView 中将行居中?

    我有一个UICollectionView与随机细胞 有什么方法可以让我将行居中吗 默认情况下它是这样的 x x x x x x x x x x x x x x 这是所需的布局 x x x x x x x x x x x x 我必须做这样的事
  • 如何更改 SwiftUI 列表中分隔符的颜色?

    我在 SwiftUI 中创建了一个列表 我想更改颜色或删除分隔符 因为在 UIKit 中 我们可以轻松更改 TableView 中分隔符的颜色 下面是 SwiftUI 中列表的代码和 UI 图片 State private var user
  • CoreBluetooth:检测设备超出范围/连接超时

    我正在设计一个 iOS 框架来处理多个 BLE 设备 均为同一类型 目前一切都运行良好 除了一件事 客户想要一个包含可用设备的列表 但是 我如何检测过去发现的设备何时不再可用 当我尝试连接到不再可用的设备时 会出现另一个问题 文档说 连接尝
  • 如何表示Apple 发布的Mac OSX 崩溃报告?

    对于 iOS 崩溃报告 将崩溃报告拖放到管理器中就足够了 符号化 iPhone 应用程序崩溃报告 https stackoverflow com questions 1460892 symbolicating iphone app cras
  • ios - 如何声明静态变量? [复制]

    这个问题在这里已经有答案了 C 中声明的静态变量如下 private const string Host http 80dfgf7c22634nbbfb82339d46 cloudapp net private const string S

随机推荐

  • while 循环的 Python 枚举

    Python 有一种优雅的方式自动生成计数器变量for循环 enumerate功能 这节省了初始化和递增计数器变量的需要 计数器变量也很丑陋 因为一旦循环完成它们通常就没用了 但它们的作用域不是循环的作用域 因此它们不需要占用命名空间 尽管
  • 如何将指定字段中的隐私政策添加到Chrome扩展程序中?

    是否有任何密钥或属性或其他方式可以将指定字段中的附加信息添加到 Chrome 扩展程序 Note 我们正在尝试在 Chrome 扩展程序下载 UI 中添加附加信息字段作为开发者隐私链接 但无法添加字段 您能否帮助我们了解如何在指定字段中添加
  • Spring自定义AuthenticationFailureHandler

    我已经尝试了一整天 让我的自定义身份验证失败处理程序与 Spring 3 1 3 一起使用 我认为配置正确
  • 使用 HTML 表单作为 powershell 的 GUI

    我有一个 powershell 脚本 我想使用 html 表单运行它 我所拥有的只是一些表单字段和一个按钮 当我运行 powershell 脚本时 它会打开一个新的 ie 窗口 然后导航到包含表单的正确页面 如何收集用户单击按钮后在表单中填
  • Delphi/Pascal 有静态代码分析工具吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 Delphi Pascal 有静态代码分析工具吗 我见过很多 C 和 NET 的选项 但没有看到 De
  • java中如何将字符串转换为比特流

    如何将字符串转换为位 0 和 1 的流 我做了什么我采取了一个字符串 然后将其转换为一个字符数组 然后我使用了方法 称为 forDigit char int 但它没有给我作为 0 和 1 流的字符 你能帮忙吗 另外我怎样才能从位到字符进行相
  • 如何使用selenium获取td元素的文本?

    我有一个 html 表格 我需要用硒获取 td 元素的文本 html结构 table tbody tr td b Success b You have transferred 1 000 00 USD to DIST2 Your balan
  • 从 iPhone 发送 UDP 数据包

    有人有关于从 iPhone SDK 发送 UDP 数据包的好教程吗 EDIT 事实上 做到这一点真的很容易 RTFM 包含 AsyncUdpSocket 后 只需在标头中添加以下内容 AsyncUdpSocket socket 主要是 NS
  • Python Rich 表中的列表列表

    鉴于以下内容 我怎样才能将动物 年龄和性别放入每个表格单元格中 目前 所有数据最终都存储在一个单元格中 谢谢 from rich console import Console from rich table import Table lis
  • Appium Send keys() 函数发送中文字符作为英文字符串的一部分

    使用appium时send keys 函数在文本字段中发送名称 除了名称之外 文本字段中还会出现一些随机的汉字 我们在能力中使用 capabilities setCapability unicodeKeyboard true 甚至认为我们无
  • 基于行中的值的“开始”和“结束”日期

    我有一个可以找到的输入数据示例here https github com veronique ka tests blob master input xlsx input 我需要根据每行中的数据添加两列 开始日期 和 结束日期 开始日期 当所
  • 无法从 PATH 环境变量中删除 cygwin

    我最近不得不重新安装 Cygwin 在这样做时 我遇到了某些应用程序的问题 因为 Cygwin 似乎已附加到我的 PATH 环境变量中 我尝试按照这些说明删除它https www java com en download help path
  • 如何使用 SSMS 中的表值参数执行存储过程

    当我右键单击存储过程并选择执行存储过程命令时 我应该将什么作为值传递给表值参数 我不是在谈论 SSMS 查询 窗口 我说的是当您右键单击 SP 时显示的 执行过程 对话框 我可以通过此屏幕直接向 SP 提供参数值吗 这是可以做到的 例如 假
  • 如何在 Ruby 中将字符串转换为常量?

    如何转换字符串 User to User Object const get User 无需 ActiveSupport
  • PyGTK中动态修改/刷新菜单内容

    我正在尝试在我用 PyGTK 编写的 GUI 的菜单中实现最近打开的项目列表 我像这样初始化菜单 self filemenu gtk Menu self init file menu self fileitem gtk MenuItem F
  • 在多项活动中使用 Espresso 空闲资源

    我有一个启动第二个活动的第一个活动 在第二个活动中我有一个加载对话框 不是 AsyncTask 我需要让 Espresso 等到对话框消失后再继续测试 我必须在哪里实现 IdlingResource 我怎样才能让它等待dismissDial
  • 将向量作为 void 指针传递给函数

    我有一个回调函数 需要一个void 作为传递参数的参数 我想将向量传递给函数 该函数将被多次调用 因此在回调过程完成后 我希望能够迭代所有已调用的元素push back 通过回调 static void cb void data vecto
  • Angular 应用程序中 Font Awesome 字体出现 CORS 错误

    我已经运行 Angular 和 Material 一段时间了 但是这个问题突然出现并让我难住了 我正在运行来自 IntelliJ 的 Angular 应用程序 它开始出现在我的控制台中 访问位于 的字体https fonts gstatic
  • .NET 将外部 CSS 转换为内联 CSS [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个将外部 CSS 转换为内联 CSS 的工具 生成的 HTML 用于电子邮件和 PDF 创
  • 使用 SwiftUI 制作按钮闪烁动画

    如何在 SwiftUI 中制作边框颜色变化动画 这是 UIKit 的代码 extension UIButton func blink setColor UIColor repeatCount Float duration Double se