Я почти закончил работу над этим учебником здесь Это действительно информативно и помогло мне понять, как протоколы и делегаты работают вместе для передачи данных.
Однако у меня есть одно предупреждениеэто появляется, когда я пытаюсь сказать своему подпредставлению, что mainview - это его делегат.отправляет обратно это предупреждение
"+ setDelegate: 'не найдено (тип возвращаемого значения по умолчанию равен' id ')"
До этого момента все было в порядке, и яЯ просто размышляю над тем, что означает эта ошибка, и если это как-то связано с тем, как я реализовал свой код.
ниже, где происходит предупреждение ...
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
// Navigation logic may go here. Create and push another view controller.
//--- Idendify selected indexPath (section/row)
if (indexPath.section == 0) {
//--- Get the subview ready for use
VehicleResultViewController *vehicleResultViewController = [[VehicleResultViewController alloc] initWithNibName:@"VehicleResultViewController" bundle:nil];
// ...
//--- Sets the back button for the new view that loads
self.navigationItem.backBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"Back" style: UIBarButtonItemStyleBordered target:nil action:nil] autorelease];
// Pass the selected object to the new view controller.
[self.navigationController pushViewController:vehicleResultViewController animated:YES];
[VehicleResultViewController setDelegate:self]; //<<-- warning here says -->> Method'+setDelegate:' not found (return type defaults to 'id')
switch (indexPath.row)
{
case 0: vehicleResultViewController.title = @"Manufacture";
[vehicleResultViewController setRequestString:@"manufacture.php"]; //sets the request string in searchResultsViewController
break;
//...
Любая помощьбудет принята с благодарностью.
Обновлено, вот как я настроил моего делегата: SecondView.h
//...
@interface VehicleResultViewController : UITableViewController <NSXMLParserDelegate> {
//..
id <PassSearchData> delegate;
}
//..
@property (retain) id delegate;
@end
SecondView.m
//..
@synthesize delegate;
//..
- (void)viewWillDisappear:(BOOL)animated
{
[super viewWillDisappear:animated];
[[self delegate] setVehicleSearchFields:vehicleCellTextLabel];
}
//..
Надеюсь, это лучше проясняет, что я делаю.