美文网首页
SwiftUI iOS 超酷组件之支持文本分割炸裂徽标效果 正则

SwiftUI iOS 超酷组件之支持文本分割炸裂徽标效果 正则

作者: iCloudEnd | 来源:发表于2021-02-26 12:24 被阅读0次

实战需求

SwiftUI iOS 超酷组件之支持文本分割炸裂徽标效果(教程含源码)

本文价值与收获

看完本文后,您将能够作出下面的界面

截屏2021-02-26 下午12.12.59.png

看完本文您将掌握的技能

若要分隔文本,组件需要两个重要的信息。一个是要爆炸的文本,另一个是定界符,用于定义应应用哪个规则进行爆炸。提供了五种不同的定界符:

  • .all
  • .character
("Hello World!", delimiter: .character)
  • .word (default if no specific delimiter is provided)
("Hello World!")
  • .sentence
  • custom(regex: String)
("Hello World!", delimiter: .custom(regex: "(l)"))
  • 分割修饰符
("Hello World!").segmentModifier(...)
  • ViewModifier基础使用
func segmenModifier<M: ViewModifier>(_ modifier: M) -> some View 

基础知识

ViewModifier

应用于视图的修改器或另一个视图修改器,生成原始值的不同版本。

protocol ViewModifier

参考代码

struct PressActions: ViewModifier {
    var onPress: () -> Void
    var onRelease: () -> Void
    
    func body(content: Content) -> some View {
        content
            .simultaneousGesture(
                DragGesture(minimumDistance: 0)
                    .onChanged({ _ in
                        onPress()
                    })
                    .onEnded({ _ in
                        onRelease()
                    })
            )
    }
}


extension View {
    func pressAction(onPress: @escaping (() -> Void), onRelease: @escaping (() -> Void)) -> some View {
        modifier(PressActions(onPress: {
            onPress()
        }, onRelease: {
            onRelease()
        }))
    }
}

实战代码

相关文章

网友评论

      本文标题:SwiftUI iOS 超酷组件之支持文本分割炸裂徽标效果 正则

      本文链接:https://www.haomeiwen.com/subject/yrtdfltx.html