小编Dev*_*oot的帖子

iOS错误无法识别的选择器发送到实例0x6ea9090

我使用核心数据来设置我的所有实体.但是当我尝试创建一个新的客户实体并将其发送到模态addCustomer视图控制器时,我不断收到此错误.

*由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [UINavigationController setCustomer:]:无法识别的选择器发送到实例0x8854700'

当程序在prepareForSegue中获得addController.customer = newCustomer时,会在AccountListTableViewController.m中发生错误.

这是代码:

AccountListTableViewController.h

#import <UIKit/UIKit.h>
#import "CustomerAddViewController.h"
@class Customer;


@interface AccountListTableViewController : UITableViewController <CustomerAddDelegate, NSFetchedResultsControllerDelegate> {
@private
    NSFetchedResultsController *fetchedResultsController;
    NSManagedObjectContext *managedObjectContext;

}

@property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController;
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;



@end
Run Code Online (Sandbox Code Playgroud)

AccountListTableViewController.m

#import "AccountListTableViewController.h"
#import "AccountListCell.h"
#import "Customer.h"
#import "AppDelegate.h"



@implementation AccountListTableViewController

@synthesize managedObjectContext, fetchedResultsController;

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    if ([[segue identifier] isEqualToString:@"AddAccountSegue"] ) {
        CustomerAddViewController *addController = [segue destinationViewController];
        addController.delegate = self;

        Customer *newCustomer = [NSEntityDescription insertNewObjectForEntityForName:@"Customer" inManagedObjectContext:self.managedObjectContext];
        addController.customer …
Run Code Online (Sandbox Code Playgroud)

core-data storyboard ios5

4
推荐指数
1
解决办法
8058
查看次数

使用故事板iOS5传递对象

我试图将一个对象传递给我在故事板中创建的静态分组表视图.

这是我在第一个视图中用来推送第二个视图的代码:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    {
        NSLog(@"Row Selected");
        CustomerDetailTableViewController *detailView = [[self storyboard] instantiateViewControllerWithIdentifier:@"DetailsView"];
        detailView.customer = [self.fetchedResultsController objectAtIndexPath:[self.tableView indexPathForSelectedRow]];
        NSLog(@"%@",detailView.customer.firstName);
        [self.navigationController pushViewController:detailView animated:YES];

    }
Run Code Online (Sandbox Code Playgroud)

firstName的NSlog是正确的,但是当推送详细信息视图时,detailView中的单元格为空.我可能只是缺少一些愚蠢的东西,但是一双新鲜的眼睛会非常感激.

以下是detailView控制器的代码:

CustomerDetailTableViewController.h

@class Customer;

#import <UIKit/UIKit.h>

@interface CustomerDetailTableViewController : UITableViewController{
    Customer *customer;

    UILabel *fullName;
    UILabel *address;
    UILabel *homePhone;
    UILabel *cellPhone;
    UILabel *email;

}

@property (nonatomic, strong) IBOutlet UILabel *fullName;
@property (nonatomic, strong) IBOutlet UILabel *address;
@property (nonatomic, strong) IBOutlet UILabel *homePhone;
@property (nonatomic, strong) IBOutlet UILabel *cellPhone;
@property (nonatomic, strong) IBOutlet UILabel *email; …
Run Code Online (Sandbox Code Playgroud)

storyboard ios5

2
推荐指数
1
解决办法
3958
查看次数

标签 统计

ios5 ×2

storyboard ×2

core-data ×1