私が理解している限り、この標準UIWebView
は多数の拡張子のローカルファイルを表示できます。アプリケーションでフォーマットされたテキストを表示する必要があるので、この方法が最適だと思いました。
そこで、test.rtfというリッチテキストファイルを作成し、現在Webビューに表示しようとしています。しかし、私は失敗しました。rtfファイルに入力したテキストではなく、空白の白い画面しか表示されません。
誰かが私のコードを見て、実装のどこが間違っていたかを指摘できますか?
ヘッダーファイル:
#import <UIKit/UIKit.h>
@interface MainViewController : UIViewController <UIWebViewDelegate> {
UIWebView * webView;
}
@end
メインファイル:
#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"); //ここでやりたいことは何でもしますreturnYES; } @終わり