- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试从表格 View 切换到详细 View 。当我点击单元格时它崩溃了。我已经使用 breaks 来尝试查找它在代码中崩溃的位置,但我找不到特定的行。当从 TableView 到详细 View 执行 segue 时,它会崩溃。我想将一些变量传递给详细 View ,但我首先需要让它切换到详细 View 。我正在使用 Storyboard fyi。任何帮助将不胜感激。
更新:崩溃日志如下
arg c = (int) 1
arg v = (char **) 0x2fd63cdc
这是崩溃所在的行
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
更新 2
当我单步执行代码时崩溃之前的最后一段代码是 prepare for segue 函数。在最后一行代码之后,它崩溃并转到上面的行。
更新 3
我意识到控制台被隐藏了,所以这是控制台中显示的错误。我在为 segue 做准备时的两个 nslog 都被调用了。
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<DetailViewController 0x1e098bd0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key name.'
*** First throw call stack:
(0x3a1e63e7 0x39072963 0x3a1e60d5 0x3a418fe9 0x3a414d53 0x3a16c8a5 0x39665d7d 0x396655ff 0x3955e039 0x394e8421 0x3953d1b7 0x3953d0fd 0x3953cfe1 0x3953cf0d 0x3953c659 0x3953c541 0x3952ab33 0x3952a7d3 0x3958b2ad 0x3960dca1 0x3a4b9e67 0x3a1bb857 0x3a1bb503 0x3a1ba177 0x3a12d23d 0x3a12d0c9 0x3746633b 0x3951d291 0x69a9 0x3a91eb20)
libc++abi.dylib: terminate called throwing an exception
RootViewController.m
#import "RootViewController.h"
#import "DetailViewController.h"
@implementation RootViewController
- (id)initWithStyle:(UITableViewStyle)style
{
self = [super initWithStyle:style];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
//Initialize the array.
listOfItems = [[NSMutableArray alloc] init];
//Add items
[listOfItems addObject:@"Jane"];
[listOfItems addObject:@"Johnny"];
[listOfItems addObject:@"Deanne"];
[listOfItems addObject:@"John"];
[listOfItems addObject:@"Susan"];
//Set the title
self.navigationItem.title = @"Countries";
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark - Table view data source
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
// Return the number of sections.
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [listOfItems count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"MyCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
// Set up the cell...
NSString *cellValue = [listOfItems objectAtIndex:indexPath.row];
cell.textLabel.text = cellValue;
return cell;
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
DetailViewController *DVC = [[DetailViewController alloc]init];
DVC = [segue destinationViewController];
NSIndexPath *path = [self.tableView indexPathForSelectedRow];
NSString *name = [listOfItems objectAtIndex:path.row];
DVC.name1.text = name;
}
RootViewController.h
#import <UIKit/UIKit.h>
@interface RootViewController : UITableViewController <UITableViewDataSource,UITableViewDelegate> {
NSMutableArray *listOfItems;
IBOutlet NSMutableArray *detailListOfItems;
}
@end
DetailViewController.m
#import "DetailViewController.h"
@implementation DetailViewController
@synthesize selectedCountry;
@synthesize name1;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
//Set the title of the navigation bar
//self.navigationItem.title = name1.text;
}
DetailViewController.h
#import <UIKit/UIKit.h>
@interface DetailViewController : UIViewController
@property (nonatomic,strong) IBOutlet UILabel *name1;
@property (nonatomic, retain) NSString *selectedCountry;
@end
最佳答案
添加异常断点....
这是顶部的标签:
您需要选择倒数第二个断点图标。按下它并查看底部的添加图标:
然后按添加并创建一个异常断点并将其修改为这些设置:
这是你的断点异常!
然后运行您的应用程序,它应该会在您崩溃的那一行崩溃。您可能会看到一些崩溃日志,并且您可能必须将方案更改为 GDB
更新
是否有任何类型的崩溃日志或堆栈跟踪?另外,尝试将方案更改为 GDB...方法如下:
切换到 GDB 通常可以解决这个问题。如果您已经使用 GDB,请切换到 LLDB,看看会发生什么!
注意:在您发布时,
arg c = (int) 1
arg v = (char **) 0x2fd63cdc
不是您的崩溃日志...
更新
如果这仍然不起作用,您应该在各处放置断点和 NSLog()
以进行调试并找出错误的崩溃代码的位置!
更新
看,我们显然无法找出崩溃的位置,但我可能对崩溃的位置和原因有一些微妙的线索。它与您的 TableView 和 listOfItems
相关。通常, TableView 会在调用 viewDidLoad
代码之前或同时重新加载其数据并调用其委托(delegate)和数据源方法。所以将listOfItems
对象的初始化和添加转移到viewWillAppear
中,看看会发生什么。
更新
检查 Storyboard和 DetailViewController
中的所有 socket ,并确保它们未连接到任何不再存在的东西
关于ios - 当我在表格 View 中选择一个单元格时,我的应用程序崩溃了,但我找不到它崩溃的代码位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14027118/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!