Как исправить PageViewController в конкретном представлении

Я хочу исправить представления PageViewController в определенном представлении. Когда я загружаю основной вид ViewController, он работает нормально, но когда я загружаю его в subView, PageViewController не фиксируется в этом subView. Как исправить PageViewController в subview.

Изображение 1, вид красного цвета, мой subView Я хочу исправить PageViewController в этом представлении красного цвета.

Как исправить PageViewController в конкретном представлении

изображение 2, это я получаю.

Как исправить PageViewController в конкретном представлении

Что ты имеешь в виду под исправлением? Относится ли это к ограничениям?

PGDev 01.07.2019 09:17

@ PGDev, я хочу исправить размер PageViewController в subView. Это мой код stackoverflow.com/questions/56801714/…

Naresh 01.07.2019 11:51

@iOS - в коде вашего другого вопроса вы звоните pageControllerView.addSubview(pageContainer.view) ... но не устанавливаете фрейм и/или ограничения для pageContainer.view. Вам нужно сделать это, чтобы сопоставить его «просмотры страниц» с размером вашего (красного) подвида.

DonMag 01.07.2019 14:28

@ DonMag, как исправить ограничения в pageContainer.view, не могли бы вы привести небольшой пример для меня...

Naresh 01.07.2019 14:30
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
4
76
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Основываясь на вашем коде в другом вопросе, вы добавляете представление страницы в свое (красное) подпредставление, но не устанавливаете его рамку.

    // Create the page container
    pageContainer = UIPageViewController(transitionStyle: .scroll, navigationOrientation: .horizontal, options: nil)
    pageContainer.delegate = self
    pageContainer.dataSource = self
    pageContainer.setViewControllers([page1], direction: UIPageViewController.NavigationDirection.forward, animated: false, completion: nil)

    // Add it to the view
    pageControllerView.addSubview(pageContainer.view)

    // set the frame of the pageContainer view to match its superview (the red view)
    pageContainer.view.frame = pageControllerView.bounds
    // let it resize if needed (such as device rotation)
    pageContainer.view.autoresizingMask = [.flexibleWidth, .flexibleHeight]

Этот должен решает проблему.

@ DonMag, еще один новый вопрос, ответьте, пожалуйста. Как установить текст кнопки «Назад» на панели навигации. Я не могу изменить обратно btn text . мой код

Naresh 01.07.2019 15:02

let backItem = UIBarButtonItem() backItem.title = "Журнал вызовов" self.navigationItem.backBarButtonItem = backItem if UIDevice.current.userInterfaceIdiom == .pad { backItem.setTitleTextAttributes([NSAttributedString.Key.font‌​: UIFont(name: "Exo2 -Medium", размер: 20)!], для: UIControl.State.normal); } else { backItem.setTitleTextAttributes([NSAttributedString.Key.font‌​: UIFont(name: "Exo2-Medium", size: 15)!], for: UIControl.State.normal); }

Naresh 01.07.2019 15:02

Другие вопросы по теме