Представление Полного Экрана Программно

#ios #swift #xcode

Вопрос:

Я представляю представления из инструкции switch, как показано в коде. Какой код я бы добавил, чтобы представить каждое представление в полноэкранном режиме. Я попробовал несколько методов с самим собой, но ничего не изменилось. Я также попытался настроить экран с автоматического на полноэкранный режим в раскадровке. Есть какие-нибудь идеи??

 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {  tableView.deselectRow(at: indexPath, animated: true)  let settingsSection = SettingsSection(rawValue: indexPath.section)  switch settingsSection {  case .social:  let value = SocialOptions(rawValue: indexPath.row)  switch value {  case .editProfile:  present(editProfileVC, animated: true) {    }  case .changePassword:  present(changePasswordVC, animated: true) {    }  case .deleteAccount:  present(deleteVC, animated: true) {    }  default:  debugPrint("Invalid Selection")    }    case .communications:  let value = CommunicationOptions(rawValue: indexPath.row)  switch value {  case .notifications:  present(notificationVC, animated: true) {    }  case .language:  present(languageVC, animated: true) {    }  case .contactUs:  present(contactVC, animated: true) {      }   default:  debugPrint("Invalid selection")  }  default:  debugPrint("Invalid selection")  }  }    }   

Ответ №1:

Встроите свои контроллеры просмотра в UINavigationController. Вы можете установить UINavigationController().navigationBar.isHidden = true , если вам не нужна навигационная панель вверху. Код, который вам нужен, таков UIViewController().modalPresentationStyle = .fullScreen .

 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {  tableView.deselectRow(at: indexPath, animated: true)  let settingsSection = SettingsSection(rawValue: indexPath.section)    var vc: UIViewController?  var navController: UINavigationController!    switch settingsSection {  case .social:  let value = SocialOptions(rawValue: indexPath.row)  switch value {  case .editProfile: vc = editProfileVC  case .changePassword: vc = changePasswordVC  case .deleteAccount: vc = deleteVC  default: debugPrint("Invalid Selection")  }  case .communications:  let value = CommunicationOptions(rawValue: indexPath.row)  switch value {  case .notifications: vc = notificationVC  case .language: vc = languageVC  case .contactUs: vc = contactVC  default: debugPrint("Invalid selection")  }  default: debugPrint("Invalid selection")  }    if let vc = vc {  navController = UINavigationController(rootViewController: vc)  navController.modalPresentationStyle = .fullScreen  self.present(navController, animated: true)  }   }  

Комментарии:

1. свифтКОДА, ты умный, умный человек. Спасибо вам за быстрый ответ и точный ответ

2. @CharlesMorgan Ценю это, парень. Мы здесь для того, чтобы помогать друг другу. Пожалуйста, подумайте о том, чтобы отметить мой ответ как принятый 🙂

3. С Удовольствием! все готово!