Как заставить один и тот же UIWebView получать данные из разных локальных файлов .html? - PullRequest
2 голосов
/ 24 марта 2010

У меня есть приложение, в котором есть один UIWebView и UITableView.Я не хочу создавать много .xib, поэтому я решил сделать один .xib для всех элементов таблицы.Когда пользователь выбирает элемент таблицы, появляется UIWebView, и я хочу, чтобы он загружал данные из разных .html в зависимости от имени родительского контроллера.HTML содержат текст и изображения (формулы, преобразованные в изображения).

Я пробовал это:

if (selectedTableElement==@"FirstElement") {
    [childController.message loadRequest:[NSURLRequest requestWithURL:
        [NSURL fileURLWithPath:[[NSBundle mainBundle] 
        pathForResource:@"_" ofType:@"html"]isDirectory:NO]]];
}

А потом

myWebView=message;

Но это не сработало.

Может быть, возможно отобразить тот же контент (но не в формате .html) в UITextView?

Заранее спасибо!

1 Ответ

2 голосов
/ 24 марта 2010
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    switch ([indexPath row])
    {
        case 0:
            [self loadFoo];
            break;
        case 1:
            [self loadBar];
            break;
    }

    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

- (void)loadFoo
{
    [self loadFile:@"foo.html"];
}

- (void)loadBar
{
    [self loadFile:@"bar.html"];
}

- (void)loadFile:(NSString*)file
{
    NSString* resourcePath = [[NSBundle mainBundle] resourcePath];
    NSString* sourceFilePath = [resourcePath stringByAppendingPathComponent:file];
    NSURL* url = [NSURL fileURLWithPath:sourceFilePath isDirectory:NO];
    NSURLRequest* request = [NSURLRequest requestWithURL:url];
    [myWebView loadRequest:request];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...