SwiftUI—Button按钮控件的使用

简介: SwiftUI—Button按钮控件的使用

相当于UIKit中的UIButton控件,用于实现接收用户的点击事件。


示例代码:


VStack{
    Button("First button") { //添加一个按钮,指定标题文字为 First button
    print("---First button action.") //当按钮被点击时,在控制台输出相应的日志(在实时预览模式无法查看按钮的日志输出,运行以后才可以)
    }
    Button(action: {
    print("---Second button action.") //使用另一种初始化方法,添加一个按钮控件,首先设置按钮的点击事件,当按钮被点击时,在控制台输出指定的信息
    }) {
    Text("Second button") //然后指定一个文本视图,作为按钮的文字标签
    } 
    Button(action: {
    print("---Third button action.")
    }) {
    Image(systemName: "clock")
    Text("Third button") //添加一个图像视图和文本视图作为按钮的标签内容
    }
    .foregroundColor(Color.white) //按钮文字颜色
    .background(Color.orange) //按钮背景颜色
    //按钮的内边距默认为0
    //padding for button : the tap area is wrong
    Button(action: {
    print("---padding for button.")
    }){
    Text("Default padding")
    }
    .padding(30) //内边距为30
    .background(Color.yellow)
    //padding for label : the tap area is correct!
    Button(action: {
    print("---padding for label.")
    }){
    Text("Default padding")
        .padding()
        .background(Color.yellow)
    } //另一种设置方法,显示效果与上一种相同
    Button(action: {
    print("---Button with image.")
    }){
    HStack { //可以组合多个子视图,并使子视图沿着水平方向等距排列
        Image(systemName: "star")
        Text("Button with image")
    }
        .padding() //水平排列视图的内边距
        .background(Color.yellow) //水平排列视图的背景颜色
    }
}


2466108-056977cb6e9eacc5.webp.jpg

目录
相关文章
系列文章深度解读|SwiftUI 背后那些事儿
前言 今年苹果的WWDC你看了吗?苹果在2019年的WWDC的重头戏当然非SwiftUI莫属:全新的声明式语法、绑定式API、和响应式变成框架Combine。这一切的一切都预示着即将在Apple Native布局系统掀起一场革命。
17988 0
|
监控 物联网
物联网卡流量为什么不能结转
物联网卡(IoT卡)的流量通常不能结转至下个月的原因,涉及多个技术和商业层面的考虑。以下是具体的分析和解释,以及如何操作以避免流量浪费:
|
11月前
|
UED
使用约束布局实现居中对齐效果
【10月更文挑战第24天】我们可以看到使用约束布局实现居中对齐并不是一件难事。只要掌握了基本的方法和技巧,结合具体的场景进行灵活运用,就能轻松地实现各种居中对齐效果。在实际开发中,要不断实践和总结经验,以便更好地发挥约束布局的优势,为用户带来更优质的界面体验。
355 1
|
11月前
|
人工智能 自然语言处理 搜索推荐
解读:claude国内中文版_CLAUDE国内镜像网站
Claude AI,由 Anthropic 公司开发,以信息论之父 Claude Shannon 命名,代表了人工智能语言模型发展的新方向。它不仅继承了现有语言模型强大的文本生成能力,更着重于安全性、透明度和可控性,致力于打造更负责任、更值得信赖的 AI 系统
Unity精华☀️点乘、叉乘终极教程:用《小小梦魇》讲解这个面试题~
Unity精华☀️点乘、叉乘终极教程:用《小小梦魇》讲解这个面试题~
|
设计模式 API 图形学
Unity精华☀️ 「设计模式」的终极详解!
Unity精华☀️ 「设计模式」的终极详解!
|
设计模式 安全 图形学
Unity精华☀️ 面试官眼中的「设计模式」
Unity精华☀️ 面试官眼中的「设计模式」
|
程序员 索引
SwiftUI极简教程18:SwipeCard卡片滑动效果的使用(上)
SwiftUI极简教程18:SwipeCard卡片滑动效果的使用(上)
1396 0
SwiftUI极简教程18:SwipeCard卡片滑动效果的使用(上)
|
运维 监控 Java
SpringBoot-ElasticJob封装快速上手使用(分布式定时器)
SpringBoot-ElasticJob封装快速上手使用(分布式定时器)
|
监控 安全 Linux
reactor的原理与实现
前情回顾 网络IO,会涉及到两个系统对象:   一个是用户空间调用的进程或线程   一个是内核空间的内核系统 如果发生IO操作read时,会奖励两个阶段:
319 1