I’ve the next View
in SwiftUI to show FamilyActivityPicker
:
import SwiftUI
import FamilyControls
struct FamilyActivityPickerView: View {
@State non-public var selectionToDiscourage = FamilyActivitySelection()
@Surroundings(.dismiss) non-public var dismiss
var physique: some View {
FamilyActivityPicker(headerText: "Choose Apps to Limit", choice: $selectionToDiscourage).navigationBarItems(main: Button("Cancel") {
print("Cancel!")
dismiss()
}, trailing: Button("Achieved") {
print("Achieved!")
dismiss()
}).ignoresSafeArea().onChange(of: selectionToDiscourage) { newSelection in
let purposes = selectionToDiscourage.purposes
let classes = selectionToDiscourage.classes
let webDomains = selectionToDiscourage.webDomains
print("purposes: (purposes), classes: (classes), webDomains: (webDomains)")
}
}
}
Nevertheless, neither of the navigationBarItems main and trailing buttons are exhibiting:
What am I doing incorrect? How are we speculated to Cancel or Achieved the FamilyActivityPicker view?
EDIT:
Once I use NavigationStack
with .toolbar
, I find yourself with 2 navigation bars as proven beneath screenshot which seems to be very ugly and wastes house:
import SwiftUI
import FamilyControls
struct FamilyActivityPickerView: View {
@State non-public var selectionToDiscourage = FamilyActivitySelection()
@Surroundings(.dismiss) non-public var dismiss
var physique: some View {
NavigationStack {
FamilyActivityPicker(choice: $selectionToDiscourage).ignoresSafeArea().onChange(of: selectionToDiscourage) { newSelection in
let purposes = selectionToDiscourage.purposes
let classes = selectionToDiscourage.classes
let webDomains = selectionToDiscourage.webDomains
print("purposes: (purposes), classes: (classes), webDomains: (webDomains)")
}.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("Cancel") {
print("Cancel!")
dismiss()
}
}
ToolbarItem(placement: .navigationBarTrailing) {
Button("Achieved") {
print("Achieved!")
dismiss()
}
}
}
}
}
}
End result: