Swift / Xcode: почему панель вкладок исчезает, если я ухожу со страницы? - PullRequest
0 голосов
/ 02 марта 2020

Итак, у меня есть список упражнений. Каждое упражнение представляет собой кнопку, которая переключается на экран, на котором отображается видео упражнения. Затем у меня есть кнопка «Назад» на странице видео, которая переходит обратно к начальной странице списка упражнений. Однако, когда я возвращаюсь назад, панель вкладок внизу больше не существует. Есть идеи, почему они исчезают? Спасибо! Hi! So I have a list of exercises.  Each exercise is a button that segues to a screen that shows a video of the exercise.  I then have a back button on the video page that segues back to the initial list of exercise page.  However, when I segue back, the tab bar at the bottom is no longer there.  Any idea why it's disapearing? Thanks so much!

Ответы [ 2 ]

1 голос
/ 02 марта 2020

Извините за последний ответ, это был какой-то другой вопрос по stackoverflow, просто неуместно его. Пожалуйста, посмотрите на свой контроллер видео страницы, если вы выбрали это. Также проверьте, есть ли в вашем коде эти строки

self.hidesBottomBarWhenPushed = YES;

Check out the one pointed out

0 голосов
/ 02 марта 2020

Измените ваш segue для выполнения segue на TAB BAR CONTROLLER

Создайте файл UITabBarController. Внутри него создайте структуру и простое условие if

class TabBarController: UITabBarController {

    struct defaultIndexSelection {

    static var selectedIndex = "0"

    }

    override func viewDidLoad() {
        super.viewDidLoad()



        if defaultIndexSelection.selectedIndex == "0"
        {
            self.tabBarController?.selectedIndex = 0
        }
        else if defaultIndexSelection.selectedIndex == "1"
        {
            self.tabBarController?.selectedIndex = 1
        }
        else if defaultIndexSelection.selectedIndex == "2"
        {
            self.tabBarController?.selectedIndex = 2
        }
        else if defaultIndexSelection.selectedIndex == "3"
        {
            self.tabBarController?.selectedIndex = 3
        }
    }

Установите этот TabBarController в качестве класса вашего TabBarController.

Теперь добавьте эту строку в действие ваших кнопок "назад".

TabBarController.defaultIndexSelection.selectedIndex = 0
// if you want to have the tab at index 0 selected and 
shown on back button press or 1 if you want first tab selected

Таким образом, всякий раз, когда вы нажимаете обратно из какого-либо viewController, он возвращается к tabbarcontroller, а затем выбирает индекс в зависимости от того, из какого контроллера просмотра вы пришли.

TabBarController.defaultIndexSelection.selectedIndex = 0 being your 1st tab
TabBarController.defaultIndexSelection.selectedIndex = 1 being your 2nd tab
TabBarController.defaultIndexSelection.selectedIndex = 2 being your 3rd tab
TabBarController.defaultIndexSelection.selectedIndex = 3 being your 4th tab
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...