UIPageViewController 背景在 Objective C iOS 中从不透明

UIPageViewController background never transparent in Objective C iOS

我想要 UIPageViewController 的背景透明,这样我就可以看到 UIPageViewController 后面的图像永远不会根据 UIPageViewController 的滚动移动。

我尝试了很多东西,包括[UIColor clearcolor],但它不会显示UIPageViewController后面的内容。

尝试这些解决方案:

您需要清除 PageViewContoller 项目背景颜色的颜色

解决方案 1

通过 UIPageViewController 的 dataSource 方法清除颜色。

UIPageViewControllerDataSource

-(UIViewController *)viewControllerAtIndex:(NSUInteger)index
{
    PageViewController *itemPage = arrViewControllers[index];
    itemPage.view.backgroundColor = [UIColor clearColor];

    return itemPage;
}

解决方案 2

正在为 pageviewcontroller 数组创建数组。

for (int i = 0; i < 5; i++) {
            PageItemViewController *pageItemController = [self.storyboard instantiateViewControllerWithIdentifier:@"PageItemViewController"];
            pageItemController.view.backgroundColor = [UIColor clearColor];
            
            [arrViewControllers addObject:pageItemController];
        }

将此 self.modalPresentationStyle = UIModalPresentationCustom; 放入您从 PageViewController 和每个子 viewController 继承的 ViewController 中,并清除每个子

的背景色。