Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.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 执行segue没有任何影响_Ios_Sqlite_Segue_Viewcontroller - Fatal编程技术网

Ios 执行segue没有任何影响

Ios 执行segue没有任何影响,ios,sqlite,segue,viewcontroller,Ios,Sqlite,Segue,Viewcontroller,我有以下代码: - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { indexPathRow = indexPath.row; NSLog(@"indexPathRow.%d", indexPathRow); mylist.recordIdToEdit = [[myIdArray objectAtIndex:indexPath

我有以下代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{  
    indexPathRow = indexPath.row;  
    NSLog(@"indexPathRow.%d", indexPathRow);  
    mylist.recordIdToEdit = [[myIdArray objectAtIndex:indexPathR NSLog(@"Item selected..%d", safetyInventoryList.recordIdToEdit);
    [self performSegueWithIdentifier:@"DetailsViewController" sender:nil];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{
  if([segue.identifier isEqualToString:@"DetailsViewController"])
    {
       DetailsViewController *destViewController = segue.destinationViewController;
       int itemIdToFetch = myList.recordIdToEdit;
       [detailedList fetchDetails:itemIdToFetch];
       destViewController.name = detailedList.itemName;
       destViewController.itemId = itemIdToFetch;
    }
}
我的segue标识符正确,如果我的segue准备中没有任何处理,则执行segue工作正常!此外,我还尝试将提取数据从DB移动到详细视图控制器,而不是在其viewdidload中的PrepareForsgue。这也没有效果。未显示详细信息视图控制器,并且未引发任何错误。节目到此为止 !

删除行

[self performSegueWithIdentifier:@"DetailsViewController" sender:nil];
从didSelectRowAtIndexPath,然后重试


确保您的segue具有标识符名称DetailsViewController您可以通过选择segue并选择属性检查器序列图像板segue标识符名称来检查这一点。

我认为您应该尝试将数据从DB提取到detailed view controller,但在不同的线程中

dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
    dispatch_async(queue, ^{

dispatch_async(queue, ^{

  });
 });

希望它能解决你的问题。

你面临的问题是……问题是下一个VC没有出现。它停留在以前的VC。虽然没有抛出错误,但不执行segue!“mylist.recordIdToEdit”数组或strits int是什么-整数值然后做一件事删除此方法“prepareForSegue”并在NSUserDefaults中添加值这是一种简单的方法na。如果删除它,我应该在哪里执行segue?我已经确认我的标识符是正确的-(void)prepareforsgue:(UIStoryboardSegue*)segue sender:(id)sender此方法识别视图控制器更改只需删除[self-PerformsgueWithIdentifier:@“DetailsViewController”sender:nil];从-(void)tableView:(UITableView*)tableView选择rowatindexpath:(nsindepath*)indepath并尝试运行您的应用程序。让我们来看看。