65ce3c1a72320fc8dfe7f7bf66e13106
SwiftUI Button自定义标题 多格式组合 字号 斜体 颜色 下划线 ButtonStyle(教程含源码)

实战需求

SwiftUI Button自定义标题多格式组合

  • 字号
  • 斜体
  • 颜色
  • 下划线

本文价值与收获

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

截屏2020-11-21 下午10.36.51.png

截屏2020-11-21 下午10.36.51.png

看完本文您将掌握的技能

  • ButtonStyle
  • func makeBody(configuration: Configuration)
  • .buttonStyle(ButtonStyle())
  • @escaping
  • .italic()
  • .foregroundColor(.red)
  • .underline()
  • .bold()

基础知识

ButtonStyle

一种类型,将标准交互行为和自定义外观应用于视图层次结构中的所有按钮。

protocol ButtonStyle

要为视图层次结构配置当前按钮样式,请使用修饰符。指定一种样式,该样式在创建使用针对每个平台定义的标准按钮交互行为的按钮时符合。要创建具有自定义交互行为的按钮,请改用。
buttonStyle(_:)

  • ButtonStyle
  • PrimitiveButtonStyle

主题

配置按钮样式

1、typealias Configuration

按钮的属性。

2、struct ButtonStyleConfiguration

按钮的属性。


获取视图

3、func makeBody(configuration: Self.Configuration) -> Self.Body

创建一个表示按钮主体的视图。
需要。

4、associatedtype Body : View

表示按钮主体的视图。
需要。


实战代码

```
import SwiftUI

struct FSButton: View {
let title: Text
let action: () -> Void

init(_ title: Text, action: @escaping () -> Void) {
self.title = title
self.action = action
}

top Created with Sketch.