2015-01-29 5 views
0

Этот вопрос основан на учебнике по x-коде яблока here.Unwind segue "Свойство 'BusStopItem' не найдено по типу 'AddBusStopViewController' '

У меня возникла ошибка, когда я вызываю функцию unwindBusList, которая смотрит на источник segue. Я тестировал его с этими строками, прокомментировал, и все остальное, похоже, работает отлично, кроме BusStopItem, которое не добавляется.

Свойство BusStopItem»не найден типа 'AddBusStopViewController'

на этой линии:

BusStopItem *item = source.busStopItem; 

YourBusStopsTableViewController.m

#import "YourBusStopsTableViewController.h" 
#import "BusStopItem.h" 
#import "AddBusStopViewController.h" 


@interface YourBusStopsTableViewController() 

@property NSMutableArray *busStopItems; 

- (IBAction)unwindBusList:(UIStoryboardSegue *)segue; 
@end 

@implementation YourBusStopsTableViewController 

- (IBAction)unwindBusList:(UIStoryboardSegue *)segue { 
    AddBusStopViewController *source = segue.sourceViewController; 
    BusStopItem *item = source.busStopItem; 
    if (item != nil) { 
     [self.busStopItems addObject:item]; 
     [self.tableView reloadData]; 
    } 
} 

AddBusStopViewController.h

#import <UIKit/UIKit.h> 
#import "BusStopItem.h" 

@interface AddBusStopViewController : UIViewController 

@property BusStopItem *busStopItem; 

@end 

AddBusStopViewController.m

#import "AddBusStopViewController.h" 

@interface AddBusStopViewController() 
@property (weak, nonatomic) IBOutlet UIBarButtonItem *saveButton; 
@property (weak, nonatomic) IBOutlet UITextField *stopNumField; 
@property (weak, nonatomic) IBOutlet UITextField *nameField; 

@end 

@implementation AddBusStopViewController 

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view. 
} 

- (void)didReceiveMemoryWarning { 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 


#pragma mark - Navigation 

// In a storyboard-based application, you will often want to do a little preparation before navigation 
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 
    // Get the new view controller using [segue destinationViewController]. 
    // Pass the selected object to the new view controller. 
    if (sender != self.saveButton) return; 

    if (self.nameField.text.length > 0 && self.stopNumField.text.length > 0) { 
     self.busStopItem = [[BusStopItem alloc] init]; 
     self.busStopItem.itemName = self.nameField.text; 
     self.busStopItem.stopNum = [self.stopNumField.text intValue]; 
     self.busStopItem.fetching = NO; 
    } 

} 


@end 

BusStopItem.h

#import <Foundation/Foundation.h> 

@interface BusStopItem : NSObject 

@property NSString *itemName; 
@property NSInteger stopNum; 
@property BOOL fetching; 

@end 

Любые и все отзывы ценится, это было давало мне покоя в течение нескольких часов, и ничего не решить мою проблему.

Спасибо заранее.

+0

Вы используете тот же самый код, вставленный здесь? Потому что описание ошибки не соответствует вашему коду. –

+0

Да, я только что проверил, я могу связать repo.https: //github.com/Dutchgoose/BusApp – Giantshark

ответ

0

Проблема заключалась в том, что файлы-объективы, созданные мной для представлений, не были в соответствующем каталоге. Хотя они появились в xcode, чтобы быть в правильном месте (и на самом деле были), эти версии не обновлялись по мере сохранения. Я заменил файлы, которые не были написаны с соответствующими, и все работает.

Смежные вопросы