UIWebView y files Richtext

Por lo que entiendo, el UIWebView estándar puede mostrar files locales de numerosas extensiones. Como necesito mostrar el text formateado en mi aplicación, pensé que este método es el path a seguir.

Por lo tanto, he creado un file de text enriquecido, llamado test.rtf, y actualmente estoy intentando mostrarlo en mi webview. Sin embargo, no tengo éxito. Veo solo una pantalla en blanco en lugar del text que escribí en el file rtf.

¿Alguien puede ver mi código y señalar dónde me equivoqué con la implementación?

Archivo de cabecera:

 #import <UIKit/UIKit.h> @interface MainViewController : UIViewController <UIWebViewDelegate> { UIWebView * webView; } @end 

Archivo principal:

 #import "MainViewController.h" @interface MainViewController () @end @implementation MainViewController - (id)init { self = [super init]; if (self) { // Customization at initialization self.view.backgroundColor = [UIColor clearColor]; //Adding a webview to display richtext documents int webHeight = self.view.bounds.size.height; webView = [[UIWebView alloc] initWithFrame:CGRectMake(0.0, 150.0, 320.0, webHeight-150.0)]; webView.dataDetectorTypes = NO; webView.scrollView.bounces = NO; webView.delegate = self; [webView setBackgroundColor:[UIColor clearColor]]; [webView setOpaque: NO]; [self.view addSubview:webView]; } return self; } - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // Accessing richtext file NSString *filePath = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"rtf"]; NSURL *url = [NSURL fileURLWithPath:filePath]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; if (request) { // Additional configuration } //Adding the content of the webiew [webView loadRequest:request]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } 
  • (BOOL) webView: (UIWebView *) webView shouldStartLoadWithRequest: (NSURLRequest *) request navigationType: (UIWebViewNavigationType) navigationType {NSLog (@ "delegate called"); // Haz lo que quieras aquí devuelve SÍ; } @fin

Debe configurar el delegado de UIWebView y devolver YES . La reference del protocolo UIWebViewDelegate dice:

webView: shouldStartLoadWithRequest: tipo de navigation:

Enviado antes de que una vista web comience a cargar un fotogtwig.

Por lo tanto, debe devolver YES por primera vez para cargar su file test.rtf.

Como ha actualizado su pregunta. Tienes que configurar

 webView.delegate = self; //webView.delegate = appDelegate; // not this line