UINavigationController проведите пальцем по жесту, чтобы открыть его, не работает [закрыто]IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Гость
 UINavigationController проведите пальцем по жесту, чтобы открыть его, не работает [закрыто]

Сообщение Гость »


Я создавал приложение UIKit, используя программный подход, без использования построителя интерфейсов. Я тестировал жест смахивания для открытия экрана, который является поведением UINavigationController по умолчанию, но действие смахивания для открытия экрана не работает.

ИнтерактивныйPopGestureRecouncer, встроенный в контроллер навигации, похоже, не работает должным образом. Я мог бы прикрепить UIPanGestureRecouncer или UISwipeGestureRecouncer, чтобы добиться аналогичного поведения. Но мне было интересно, почему это не работает.

Для отладки я использую физическое устройство под управлением iOS 17 и XCode 15.0.1.

Реализованная база кода содержит два UIViewController, которые обрабатываются через UINavigationController. Ниже приведен мой код SceneDelegate.

класс SceneDelegate: UIResponder, UIWindowSceneDelegate { окно вар: UIWindow? func Scene (_ сцена: UIScene, сеанс willConnectTo: UISceneSession, параметры ConnectionOptions: UIScene.ConnectionOptions) { Guard let Scene = (сцена как? UIWindowScene) else { return } self.window = UIWindow(windowScene: сцена) пусть vc1 = ProductsViewController() пусть vc2 = ProfileViewController() пусть NavigationController = UINavigationController (rootViewController: vc1) NavigationController.pushViewController(vc2, анимированный: true) окно?.rootViewController = NavigationController окно?.makeKeyAndVisible() } Ниже приведено определение моего двух контроллеров представления

класс ProfileViewController: UIViewController { переопределить функцию viewDidLoad() { супер.viewDidLoad() } } класс ProductsViewController: UIViewController { переопределить функцию viewDidLoad() { супер.viewDidLoad() } } Два контроллера представления не имеют настраиваемых кнопок «Назад». Они содержат только методы viewDidLoad, вызывающие инициализатор суперкласса.

Я попробовал описанные ниже подходы, но ни один из них не сработал.
[*]установка для параметра InteractivePopGestureRecouncer.delegate значения nil в viewDidLoad [*]установка activePopGestureRecouncer.delegate для экземпляра контроллера представления и возврат true для переопределенных методов [*]включение свойства activePopGestureRecouncer в контроллере навигации (оно включено по умолчанию)
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Проведите пальцем по экрану, чтобы удалить в Котлине
    Гость » » в форуме Android
    0 Ответы
    28 Просмотры
    Последнее сообщение Гость
  • Проведите пальцем по экрану, чтобы вернуться к определенным представлениям SwiftUI.
    Anonymous » » в форуме IOS
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous
  • Отключите кнопки навигации и проведите пальцем снизу вверх.
    Anonymous » » в форуме Android
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Проведите пальцем назад по Chromebook дважды в HTML-приложении для Android
    Anonymous » » в форуме Android
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Android проведите пальцем по страницам горизонтального просмотра с помощью MapView
    Anonymous » » в форуме Android
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous

Вернуться в «IOS»