Mam aplikację z kontrolerem tabBar i nawigacją.
Jak mogę zmienić tytuł tabBar (widoczny w górnym oknie aplikacji) po dotknięciu go na pasku zakładek?
Na przykład mam te elementy na pasku kart:
- Pizza
- piwo
- Pomarańczowy
- jabłko
Po kliknięciu pizzy chcę mieć pizzę w aplikacji tytułowej w górnym menu.
Jak mogę to zrobić?
Odpowiedzi:
4 dla odpowiedzi № 1W zależności od implementacji, jedna z poniższych metod powinna działać dla Ciebie.
self.navigationItem.title = "title"
lub
self.navigationBar.topItem?.title = "title"
Jeśli używasz niestandardowego paska kart utworzonego w programieUIButtons i pojemnik widoku, a następnie dodaj to do akcji przycisku lub jeśli używasz natywnego UITabBarController, a następnie ustaw delegata na siebie i wywołaj to metoda delegata didSelectViewController elementu UITabBarController.
.
EDYTOWAĆ
Po zobaczeniu kodu musisz skorzystać z tej właściwości:
self.tabBarController?.navigationItem.title = "Profile"
i wywołaj to w każdym viewWillAppear kontrolera widoku, na przykład dla ProfileViewController
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.tabBarController?.navigationItem.title = "Profile"
}
Upewnij się również, że w scenorysie ustawiłeś klasę kontrolera widoku na odpowiednią klasę kodu, na przykład:
i usuń tekst z używanego niestandardowego paska nawigacji: