swiftUI基础之自定义ButtonStyle

宋瀚海
2023-12-01

概述

按钮如果是纯色的话,可以不使用背景图片的方式,而使用自定义按钮样式的方式来实现,实现方式很简单,名称自己随意。

实现

很简单直接上代码,用了RoundedRectangle作为背景。可以自由发挥你的想象力去创作样式。

struct PrintReportBtnStyle: ButtonStyle{
    func makeBody(configuration: Configuration) -> some View {
        configuration.label
            .font(.system(size: 16))
            .foregroundColor(.white)
            .frame(width: 80,height: 40 )
            .background(
                RoundedRectangle(cornerRadius: 10, style: .continuous).foregroundColor(
                    configuration.isPressed ? Color.blue:Color.gray)
            )
            
    }
}

使用方式:

            Button(action:{
			//按下的操作
            }){
	        Text("Print")
            }.buttonStyle(PrintReportBtnStyle())
 类似资料: