• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

[SwiftUI]一、基础控件-(11)通过Button打开一个模态窗口

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(let_us_code)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址: https://www.cnblogs.com/strengthen/p/12263645.html
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

本文将使用Button控件的sheet方法,打开一个指定内容的模态窗口。

结构体相对于类来说更加轻量,所以SwiftUI使用结构体来定义视觉控件。

 1 import SwiftUI
 2 
 3 struct ContentView : View
 4 {
 5     //给结构体对象添加一个属性,
 6     //该属性为布尔类型,用于决定模态窗口的显示和隐藏
 7     @State var isPresented = false
 8     
 9     var body: some View
10     {
11         VStack
12             {
13                 //添加一个按钮控件,并设置它的标题文字
14                 Button("Show modal")
15                 {
16                     //当按钮被点击时,设置布尔属性的值为真。
17                     self.isPresented = true
18                     //调用Button控件的sheet方法,并设置isPresented的值为当前的布尔属性,
19                     //当属性的值为真时,显示sheet中的内容。
20                 }.sheet(isPresented: $isPresented, content:
21                     {
22                         //将这个自定义的视图,作为按钮控件的sheet内容
23                         MyDetailView(message: "Model window")
24                 })
25         }
26         //从窗口的上方向下拖动,可以关闭该窗口。
27     }
28 }
29 
30 //定义一个遵守View协议的指定名称的结构体,作为一个新的自定义视图。
31 //结构体相对于类来说更加轻量,所以SwiftUI使用结构体来定义视觉控件。
32 struct MyDetailView: View
33 {
34     //给自定义视图添加一个字符串类型的属性
35     let message: String
36     //实现View协议中必需实现的body属性,所有自定义视图中的元素都需要放在body中。
37     var body: some View
38     {
39         //添加一个垂直排列视图VStack,作为子视图的容器。
40         VStack{
41             //添加一个文本视图来显示属性的值。
42             Text(message)
43                 //并设置字体为标题样式。
44                 .font(.largeTitle)
45         }
46     }
47 }
48 
49 #if DEBUG
50 struct ContentView_Previews : PreviewProvider
51 {
52     static var previews: some View
53     {
54         ContentView()
55     }
56 }
57 #endif

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
swift3.0屏幕截图并且保存到本地相册发布时间:2022-07-13
下一篇:
swift2.0语法数组发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap