J'ai deux contrôleurs View: TableViewController (qui est utilisé comme un contrôleur de vue modale) et ToolbarController. Dans Interface Builder, j'ai ToolbarView, qui est contrôlé par le ToolbarController.iPhone ViewController affectant IBOutlet d'un autre ViewController
ToolbarView possède un contrôle IBOutlet UIWebView que les contrôles ToolbarController (utilise les boutons d'une barre d'outils pour basculer les pages dans un affichage Web).
Ce dont j'ai besoin, c'est que TableViewController puisse modifier l'UIWebview dans ToolbarView.
Comment puis-je accomplir ceci?
TableViewController.h:
#import <UIKit/UIKit.h>
#import "ToolbarController.h"
#import "MyAppDelegate.h"
@interface TableViewController : UITableViewController {
NSMutableArray *widgetList;
IBOutlet UIWebView *webView;
}
@property(nonatomic,retain) IBOutlet UIWebView *webView;
@end
TableViewController.m:
#import "TableViewController.h"
#import "MyAppDelegate.h"
#import "ToolbarController.h"
#import "TableView.h"
@implementation TableViewController
@synthesize webView;
//Lots of working code omitted
//didSelectRowAtIndex below should change the webView in ToolbarView to Google's homepage but does not.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *urlAddress=[NSString stringWithFormat:@"http://www.google.com"];
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webView loadRequest:requestObj];
[self dismissModalViewControllerAnimated:YES];
}
- (void)viewDidUnload {
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}
- (void)dealloc {
[super dealloc];
}
@end
Est-ce que ce délégué serait une sous-classe de TableViewController? – LoganFrederick
Un délégué est en fait un protocole, qui est très similaire à une interface dans d'autres langages OO. C'est quelque chose qu'une classe donnée implémente, mais les sous-classes ne sont pas impliquées. J'ai juste ajouté beaucoup de code qui montrera utilement comment vous pourriez utiliser des délégués dans ce scénario. Vous apprendrez beaucoup plus si vous cliquez sur les liens que j'ai fournis.:) – pix0r
pix0r, vous êtes mon héros. Merci! – LoganFrederick