Skip to content

Commit bb2d0d7

Browse files
authored
Merge pull request #36 from hdcola/hdcola
更新Button的Tap示例,让它更为生动
2 parents 6c29381 + 88fd310 commit bb2d0d7

File tree

1 file changed

+60
-9
lines changed

1 file changed

+60
-9
lines changed

OneTapSwiftUI.swiftpm/ControlsAndIndicators/ButtonControlView.swift

Lines changed: 60 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ struct ButtonControlView: View {
55
ScrollView{
66
VStack{
77
HeadlineView(
8-
title: "Button",
9-
url: "https://developer.apple.com/documentation/swiftui/button",
8+
title: "Button",
9+
url: "https://developer.apple.com/documentation/swiftui/button",
1010
description: "A control that initiates an action."
1111
)
1212
ButtonViewCode()
@@ -17,22 +17,73 @@ struct ButtonControlView: View {
1717
}
1818
}
1919

20+
struct ButtonStyleSample: View {
21+
var body: some View {
22+
/*@START_MENU_TOKEN@*//*@PLACEHOLDER=Hello, world!@*/Text("Hello, world!")/*@END_MENU_TOKEN@*/
23+
}
24+
}
25+
2026
private struct ButtonViewCode: View {
2127
var code = """
2228
struct ButtonViewCode: View {
23-
@State var buttonText = "I'm a button. Click on me.""
29+
@State var tapMessage = "Tap a Button"
2430
var body: some View {
25-
CodePreviewView(code: code)
26-
Button("\\(buttonText)"){ buttonText = "Just clicked"}
27-
.buttonStyle(.borderedProminent)
31+
Text( tapMessage )
32+
HStack{
33+
Button("Button1"){
34+
tapMessage = "Button1"
35+
}.buttonStyle(.borderedProminent)
36+
Button {
37+
tapMessage = "Button2"
38+
} label: {
39+
Label("Button2",systemImage: "2.circle")
40+
}.buttonStyle(.borderedProminent)
41+
}
42+
HStack{
43+
Button("Delete Role", role: .destructive) { tapMessage = "Delete Role" }.buttonStyle(.borderedProminent)
44+
Button("Cancel Role", role: .cancel) { tapMessage = "Cancel Role" }.buttonStyle(.borderedProminent)
45+
}
46+
HStack{
47+
Button("automatic") { tapMessage = "automatic" }.buttonStyle(.automatic)
48+
Button("bordered") { tapMessage = "bordered" }.buttonStyle(.bordered)
49+
}
50+
HStack{
51+
Button("borderedProminent") { tapMessage = "borderedProminent" }.buttonStyle(.borderedProminent)
52+
Button("borderless") { tapMessage = "borderless" }.buttonStyle(.borderless)
53+
}
2854
}
2955
}
3056
"""
31-
@State var buttonText = "I'm a button. Click on me."
57+
@State var tapMessage = "Tap a Button"
3258
var body: some View {
3359
CodePreviewView(code: code)
34-
Button("\(buttonText)"){ buttonText = "Just clicked"}
35-
.buttonStyle(.borderedProminent)
60+
VStack{
61+
Text( tapMessage )
62+
HStack{
63+
Button("Button1"){
64+
tapMessage = "Button1"
65+
}.buttonStyle(.borderedProminent)
66+
Button {
67+
tapMessage = "Button2"
68+
} label: {
69+
Label("Button2",systemImage: "2.circle")
70+
}.buttonStyle(.borderedProminent)
71+
}
72+
HStack{
73+
Button("Delete Role", role: .destructive) { tapMessage = "Delete Role" }.buttonStyle(.borderedProminent)
74+
Button("Cancel Role", role: .cancel) { tapMessage = "Cancel Role" }.buttonStyle(.borderedProminent)
75+
}
76+
HStack{
77+
Button("automatic") { tapMessage = "automatic" }.buttonStyle(.automatic)
78+
Button("bordered") { tapMessage = "bordered" }.buttonStyle(.bordered)
79+
}
80+
HStack{
81+
Button("borderedProminent") { tapMessage = "borderedProminent" }.buttonStyle(.borderedProminent)
82+
Button("borderless") { tapMessage = "borderless" }.buttonStyle(.borderless)
83+
}
84+
}
85+
.padding()
86+
.border(.black)
3687
}
3788
}
3889

0 commit comments

Comments
 (0)