AnimateText:SwiftUI文本动画库支持iOS/macOS





项目名称:AnimateText

项目概述

AnimateText是一个开源库,专为SwiftUI开发,用于在iOS和macOS应用中添加文本动画效果。该库提供了一种简单的方式来绑定和动画化文本,支持自定义动画效果,并且可以轻松集成到现有的SwiftUI项目中。

功能特点

  • 动画文本视图AnimateText视图用于动画化绑定的文本,支持通过泛型传递动画效果类型。

  • 自定义动画效果:每个动画效果只需遵循ATTextAnimateEffect协议。

  • 协议支持ATTextAnimateEffect协议定义了实现文本动画效果所需的结构,包括元素动画所需的信息和自定义用户信息。

使用方法

以下是如何在SwiftUI中使用AnimateText的示例:

  1. AnimateText视图使用

    @State var text: String = "AnimateText"
    @State var type: ATUnitType = .letters
    @State var userInfo: Any? = nil
    
    AnimateText<CustomEffect>($text, type: type, userInfo: userInfo)

  2. 自定义动画效果

    public struct CustomEffect: ATTextAnimateEffect {
        public var data: ATElementData
        public var userInfo: Any?
    
        public init(_ data: ATElementData, _ userInfo: Any?) {
            self.data = data
            self.userInfo = userInfo
        }
    
        public func body(content: Content) -> some View {
            content
                .opacity(data.value)
                .animation(.easeInOut.delay(Double(data.index) * 0.06), value: data.value)
        }
    }

  3. ATTextAnimateEffect协议

    public protocol ATTextAnimateEffect: ViewModifier {
        var data: ATElementData { get }
        var userInfo: Any? { get }
        init(_ data: ATElementData, _ userInfo: Any?)
    }

Swift Package Manager

AnimateText可以通过Swift Package Manager安装。在Package.swift文件中添加以下依赖:

dependencies: [
    .package(url: "https://github.com/jasudev/AnimateText.git", .branch("main"))
]

或许喜欢

Animatable:纯SwiftUI动画修饰按钮和视图库

Animatable 是一个纯SwiftUI动画库,提供多种按钮和视图动画修饰,支持自定义动画效果,增强用户界面动态体验。

最近更新 2024-12-09

AnimationStack:SwiftUI视图堆叠动画库

AnimationStack是一个SwiftUI库,允许在视图堆叠中创建动画效果,支持自定义动画和ForEach循环动画,适用于iOS和macOS应用。

最近更新 2024-12-10

ActivityIndicatorView:SwiftUI 创建的预设加载指示器库

ActivityIndicatorView 是一个 SwiftUI 库,提供多种预设的加载动画指示器,支持自定义样式和动画,适用于 iOS、watchOS、tvOS 和 macOS 平台。

最近更新 2024-12-11

热榜

Made with in Shangrao,China By 老雷

Copyright © devler.cn 1987 - Present

赣ICP备19009883号-1