iOS中视图之间的导航

iOS中视图之间的导航,ios,objective-c,Ios,Objective C,我正在尝试用Xcode制作我的第一个应用程序。本教程帮助我理解了如何在视图之间进行导航。在我的应用程序中,第一视图和第二视图上需要更多按钮,但第二视图上的按钮取决于第一视图中的按钮 例如,第一个视图上的按钮: -鸟 -狗 -鱼 鸟类的第二视图: -鹳 -麻雀 -鸡 第三个视图将描述所选动物的情况 我下一步该怎么做?链接中的示例适用于我的应用程序?您可以为第二个视图控制器声明初始值设定项以获取数据。从第一个视图控制器初始化该视图控制器时,请确保传递数据。然后,您可以在第二个视图控制器上的viewd

我正在尝试用Xcode制作我的第一个应用程序。本教程帮助我理解了如何在视图之间进行导航。在我的应用程序中,第一视图和第二视图上需要更多按钮,但第二视图上的按钮取决于第一视图中的按钮

例如,第一个视图上的按钮: -鸟 -狗 -鱼

鸟类的第二视图: -鹳 -麻雀 -鸡

第三个视图将描述所选动物的情况


我下一步该怎么做?链接中的示例适用于我的应用程序?

您可以为第二个视图控制器声明初始值设定项以获取数据。从第一个视图控制器初始化该视图控制器时,请确保传递数据。然后,您可以在第二个视图控制器上的
viewdiload:
方法中设置按钮文本(您可以尝试在
initWithData
方法中执行此操作,但有时xib元素在该点上没有正确初始化)

您需要做的是在第二个视图中创建一个public(在.h文件中)变量。假设此变量为NSString:

@property (nonatomic,strong) NSString *caseStr;
现在别忘了在第二个view.m文件中创建一个初始化器

@synthesize caseStr = _caseStr;

-(void)setCaseStr:(NSString *)caseStr
{
    _caseStr = caseStr;
}
现在,在第一个视图中实现“prepareForSegue”方法: (我们假设您的序列标识符是“ChosenAnimal”,并且鸟的类型是一个本地字符串,设置为“Birds”、“Dogs”或“Fish”

现在,您已经获得了在第一个视图中选择的内容的信息,并且可以在第二个视图中对其执行任何操作


顺便说一句:如果你想从第二个视图控制第一个视图,你必须使用委托。祝你好运

通过不使用xib的代码生成,在第二个视图中添加按钮作为子视图。如果使用xib,则需要隐藏显示或添加或删除作为子视图到第二个视图。需要根据你在第一个视图中的选择添加按钮。这是这正是我需要的。谢谢。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString:@"ChosenAnimal"]) {
        [segue.destinationViewController setCaseStr:typeOfBird];
    }
}