Этот вопрос основан на учебнике по 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
Любые и все отзывы ценится, это было давало мне покоя в течение нескольких часов, и ничего не решить мою проблему.
Спасибо заранее.
Вы используете тот же самый код, вставленный здесь? Потому что описание ошибки не соответствует вашему коду. –
Да, я только что проверил, я могу связать repo.https: //github.com/Dutchgoose/BusApp – Giantshark