Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
iphone视图加载问题_Iphone_Tabbar - Fatal编程技术网

iphone视图加载问题

iphone视图加载问题,iphone,tabbar,Iphone,Tabbar,嗨,那里 我正在制作一个tabbar应用程序。在这个应用程序中,我在第一个选项卡上使用导航,所以当我导航到其他视图时,我会立即转到其他选项卡。再次,当我要显示第一个选项卡时,它会显示导航视图我要显示第一个选项卡视图 有人可以告诉我如何处理这些事情 您是否在问如何在代码中从一个选项卡切换到另一个选项卡?如果是这样的话,看起来是这样的: YourAppDelegate *appDelegate = (YourAppDelegate *)[[UIApplication sharedApplicatio

嗨,那里

我正在制作一个tabbar应用程序。在这个应用程序中,我在第一个选项卡上使用导航,所以当我导航到其他视图时,我会立即转到其他选项卡。再次,当我要显示第一个选项卡时,它会显示导航视图我要显示第一个选项卡视图


有人可以告诉我如何处理这些事情

您是否在问如何在代码中从一个选项卡切换到另一个选项卡?如果是这样的话,看起来是这样的:

YourAppDelegate *appDelegate = (YourAppDelegate *)[[UIApplication sharedApplication] delegate];

[appDelegate tabcontroller].selectedIndex = [yourIntegerIndexHere];
上面写着“YourAppDelegate”的地方,显然要使用实际应用程序代理的名称


其中显示“yourIntegerIndexHere”,这是一个带有要切换到的选项卡索引的整数。最左边的选项卡是0。

这是基于选项卡的应用程序的主要目的,即保存所有视图,直到它们被导航为止

如果您想在点击选项卡栏时看到初始视图,那么在每个选项卡栏视图上,您必须编写代码,以便将第一个选项卡中的视图弹出到该选项卡的rootview控制器


快乐图标…

据我所知,您的TabBarController的第一个选项卡上有一个NavigationController,当您单击第一个选项卡时,您希望NavigationController返回其根视图控制器

首先,请注意,这不是TabBarController的默认行为,可能会让您的用户有点恼火。通过第二次点击选项卡,用户可以返回到TabBarController中NavigationController的根视图

知道了这一点,如果您仍然希望更改TabBarController的默认行为,那么可以执行以下操作:

将AppDelegate类设置为UITabBarController的委托。它必须实现
UITabBarControllerDelegate
协议,您必须编写如下内容:

[myUITabBarController setDelegate:self];
在应用程序内部
使用选项完成启动:
方法

然后,在AppDelegate中实现此方法

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
    if ([tabBarController selectedIndex] == kMyNavigationControllerIndex) {
        [(UINavigationController *)[tabBarController selectedViewController] popToRootViewControllerAnimated:NO];
    }
}
其中
kMyNavigationControllerIndex
是一个常量值,包含要更改的NavigationViewController的索引(即,如果它是第一个选项卡,则为0)


希望这能有所帮助。

我必须在哪里编写此代码??在每个导航视图中??工作原理。你必须解释你想做什么。从你最初的问题我真的不明白你需要什么。如果用户点击某个选项卡,则显示您在Interface Builder中创建的与该选项卡关联的视图。我发布的代码是做同样的标签切换,但是使用代码而不是用户点击。您已经问了16个问题,但还没有用正确答案标记其中一个问题。为了表达你对那些给你免费建议的人的感激之情,我建议你仔细检查你的问题,看看是否有足够好的答案被标记为你问题的正确答案