Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.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 在导航视图控制器中加载特定视图_Ios_Objective C_Uiviewcontroller - Fatal编程技术网

Ios 在导航视图控制器中加载特定视图

Ios 在导航视图控制器中加载特定视图,ios,objective-c,uiviewcontroller,Ios,Objective C,Uiviewcontroller,我有一个选项卡栏控制器,其中有3个视图控制器和一个导航视图控制器。 该导航视图控制器具有表视图控制器和详细视图 在我的第一个视图控制器(第一个选项卡)中,有三个按钮。我想要第一个按钮在导航控制器中加载详细视图。(如下图所示) 我怎样才能做到这一点 我尝试调用在LocationsTableViewController中执行segue的方法,但这会导致错误“Receiver()没有标识符为“addLocation”的segue”。虽然“addLocation”序列确实存在 方法连接到StartVi

我有一个选项卡栏控制器,其中有3个视图控制器和一个导航视图控制器。 该导航视图控制器具有表视图控制器和详细视图

在我的第一个视图控制器(第一个选项卡)中,有三个按钮。我想要第一个按钮在导航控制器中加载详细视图。(如下图所示)

我怎样才能做到这一点

我尝试调用在LocationsTableViewController中执行segue的方法,但这会导致错误“Receiver()没有标识符为“addLocation”的segue”。虽然“addLocation”序列确实存在

方法连接到StartViewController中的按钮:

- (IBAction)addLocationView:(id)sender {

    LocationsTableViewController *LTVC = [[LocationsTableViewController alloc] init];
    [LTVC addLocation];

}
-(void)addLocation
{
    [self performSegueWithIdentifier: @"addLocation" sender: self];
}
位置稳定控制器:

- (IBAction)addLocationView:(id)sender {

    LocationsTableViewController *LTVC = [[LocationsTableViewController alloc] init];
    [LTVC addLocation];

}
-(void)addLocation
{
    [self performSegueWithIdentifier: @"addLocation" sender: self];
}
“addLocation”序列是从Locations表视图控制器到addLocation视图控制器的,因此该序列存在于LocationsTableViewController上。这是正确的。但是,如果当前视图控制器不是LocationsTableViewController,则调用该segue是没有意义的

您有几个选择:

  • 故事板选项#1:从StartViewController到AddLocationViewController创建一个新的序列,并在
    addLocationView:
    中执行该序列
  • 故事板选项#2:从按钮到AddLocationViewController创建一个新的序列,然后删除
    iAction
    。单击按钮时,情节提要将自动调用该序列
  • 编程选项:实例化新的AddLocationViewController并将其推送到导航堆栈上:
    [self.navigationController pushViewController:[[AddLocationViewController alloc]init]动画:是]

  • 您好,我尝试了选项1和2,但只显示视图,没有选项卡栏和导航栏。选项3不起作用,因为self.navigationController。Startview不是导航控制器。我已经尝试过LocationsViewController*LVC=[[LocationsViewController alloc]init];[自我呈现视图控制器:LVC动画:是完成:无];[LVC.navigationController pushViewController:[[AddLocationViewController alloc]init]已设置动画:是];但是这里只显示一个空的选项卡栏。