I am using SF symbols on my TabBar but even though I use the stroke version, it inserts the fill one.
ProductsListView()
.tabItem {
Image(systemName: "book")
Text("Products")
}
However, the image that shows up when I run the application in the book.fill
Why this could be happening?
Thx
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Created
I am trying to change the navigation bar background color of my view.
Init() {
let coloredAppearance = UINavigationBarAppearance()
//coloredAppearance.configureWithTransparentBackground()
//It doesnt matter what I use in here, it continues the same
coloredAppearance.backgroundColor = UIColor(red: 202.0/255.0, green: 52.0/255.0, blue: 86.0/255.0, alpha: 1.0)
coloredAppearance.titleTextAttributes = [.foregroundColor: UIColor.white]
UINavigationBar.appearance().standardAppearance = coloredAppearance
UINavigationBar.appearance().compactAppearance = coloredAppearance
UINavigationBar.appearance().scrollEdgeAppearance = coloredAppearance
UINavigationBar.appearance().tintColor = .white
However if you get the red, green, blue, and alpha used above, you will see the color is being shown slightly different on the NavigationBar.
What's the reason for that ?
Thx
I have a form and at the end of it, a button.
Form {
Section {
} //close section
button
} //close form
However, the button is appearing surrounded by white space, like inside a textbox.
What's the reason for that?
I have a TabBar with 8 items.
And as everybody knows, more than 5 makes the 5th item the MORE button and it's perfect.
The problem is when I hit it, the button just blinks.
If I hit again, then the other options are shown.
Why ?
Thx
I have a Loading view saying "Please wait" that I want to be presented until the data from the API comes back.
However, self.showLoading = false is executed even before store.getHomeItems() is finished.
How can I do it ?
struct HomeView: View {
@State var showLoading = false
...
if (self.showLoading == true) {
LoadingView()
} else {
//my content
}
...
ScrollView {
//my scroll content
}
.onAppear {
self.showLoading = true
DispatchQueue.main.async {
store.getHomeItems()
}
self.showloading = false
...
}
I also dont know if I can call Dispatch on my HomeView, since my API layer has also an another DispatchQueue.
URLSession.shared.dataTask(with: url) { (data, _, _) in
guard let data = data else { return }
let myItems = try! JSONDecoder().decode([ItemModel].self, from: data)
DispatchQueue.main.asyncAfter(deadline: .now() + 10) {
completion(myItems)
}
}
.resume()
Thank you
I have a picker on my view but it's not selectable unless I replace my VStack for a NavigationView.
However I cant have a NavigationView on this page, otherwise it brakes other parts.
What's the solution for that ?
Thx
VStack {
Picker
}
I have a button that when pressed should call an API which return an ID.
Then having this ID, I will call a 2nd API.
Button(action: {
var id = self.callApi1()
self.callApi2(id)
}) {
Text("Start")
}
How can I call the Api2 JUST when the Api1 was finished and returned its value ?
Thank you
I have a TabBar with 3 items:
Home
ScrollView
Products
NavigationView
Users
NavigationView
When clicking on the tabBar buttons, I will go back to the related view. However, at the point where I had left.
I would like to every time I move to a different tab, it starts fresh like 1st time.
a) If it's a scrollview, after coming back to the tab I would like the view scrolled to the top.
b) If it's a navigationView, after coming back to the tab, I would like to scroll to the top and move to the Navigation root list.
How can I do it.
Thx folks