Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何将普通ViewController更改为PageViewController?_Ios_Objective C_Xcode - Fatal编程技术网

Ios 如何将普通ViewController更改为PageViewController?

Ios 如何将普通ViewController更改为PageViewController?,ios,objective-c,xcode,Ios,Objective C,Xcode,我的项目在普通的ViewController中启动现在我想使用推送序列,但这只适用于PageViewController。现在,我如何将带有.h和.m以及代码的ViewController更改为PageViewController我想您对什么是PageViewController有些困惑。如果要推送分段,视图控制器必须位于UINavigation控制器内。您将初始化第一个视图控制器作为根视图控制器,然后您将能够“推”到导航堆栈的顶部。不需要PageViewController。您的前提不正确 P

我的项目在普通的ViewController中启动现在我想使用推送序列,但这只适用于
PageViewController
。现在,我如何将带有.h和.m以及代码的ViewController更改为
PageViewController

我想您对什么是PageViewController有些困惑。如果要推送分段,视图控制器必须位于UINavigation控制器内。您将初始化第一个视图控制器作为根视图控制器,然后您将能够“推”到导航堆栈的顶部。不需要PageViewController。

您的前提不正确

PageViewController不处理推送序列,导航控制器处理推送序列

页面视图控制器管理一系列页面。它有点像表视图或集合视图,只是内容是完整的页面,并且在页面之间使用页面卷曲或侧滚动画

导航控制器管理视图控制器堆栈,您可以使用push和pop命令将视图控制器添加到堆栈中或从堆栈中取出


如果您想将应用程序的当前视图控制器放入导航控制器中,Interface Builder中会有一个菜单命令。选择视图控制器,下拉编辑菜单,并查找“嵌入>导航控制器”。如果选择该菜单项,Interface Builder会将所选视图控制器包装在导航控制器中。我想这就是你想要的。

你只想使用推式分段吗?或者你真的需要一个PageViewController吗?所以我想要一个像iOS的HomeScreen一样的PageView,我不想要导航吧是的,这对像iOS的HomeScreen一样的页面有效吗?我想要它就像在HomeScreen上一样,所以背景保持在线图标改变OK,所以你使用术语push segue是完全错误的。您需要一组可以前后滑动的图标。您可能需要使用为页面滚动设置的UIScrollView或UICollectionView。要使用滚动视图,请在Xcode帮助系统中打开UIScrollView类引用,并搜索字符串“PageControl”。这将引导您找到一个使用该名称的示例应用程序,该应用程序实现了按页面滚动的滚动视图。将该示例应用程序调整为在透明背景上滚动一组图标,下面是静态图像,这将非常容易。