Почему мой UIWebView не прокручивается? - PullRequest
1 голос
/ 18 мая 2010

В моем самом расстраивающем контрольно-пропускном пункте на сегодняшний день я столкнулся с UIWebView, который будет НЕ прокручивать! Я звоню через этот IBAction:

-(IBAction)session2ButtonPressed:(id)sender
{   
    Session2ViewController *session2View = [[Session2ViewController alloc]initWithNibName:@"Session2ViewController" bundle:nil];
    self.addictionViewController = session2View;
    [self.view insertSubview:addictionViewController.view atIndex:[self.view.subviews count]];
    [session2View release];
}

В viewDidLoad Session2ViewController.m у меня есть

- (void)viewDidLoad 
{
    [super viewDidLoad];

    // TRP - Grab data from plist
    // TRP - Build file path to the plist
    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Addiction" ofType:@"plist"];

    // TRP - Create NSDictionary with contents of the plist
    NSDictionary *addictionDict = [NSDictionary dictionaryWithContentsOfFile:filePath];

    // TRP - Create an array with contents of the dictionary
    NSArray *addictionData = [addictionDict objectForKey:@"Addiction1"];
    NSLog(@"addictionData (array): %@", addictionData);

    // TRP - Create a string with the contents of the array
    NSString *addictionText = [NSString stringWithFormat:@"<DIV style='font-family:%@;font-size:%d;'>%@</DIV>", @"Helvetica", 18, [addictionData objectAtIndex:1]];
    addictionInfo.backgroundColor = [UIColor clearColor];

    // TRP - Load the string created and stored into addictionText and display in the UIWebView
    [addictionInfo loadHTMLString:addictionText baseURL:nil];
    // TODO: MAKE THIS WEBVIEW SCROLL!!!!!!

}

В кончике я подключил свой веб-вид к делегату и к розетке. Когда я запускаю свой основной проект, список с моим HTML-кодом обнаруживается, но не прокручивается. Я скопировал и вставил этот код в новый проект, подключил перо точно так же, и badda-boom badda-bing. , , оно работает. Я даже пытался создать новый кончик с нуля в этом проекте, и тот же самый код не сработал бы.

Виски
Tango
Фокстрот

Есть идеи ???

Спасибо! Thomas

1 Ответ

1 голос
/ 19 мая 2010

Я думаю, что ваша проблема связана с одновременным включением двух контроллеров представления. Это вызывает проблемы, потому что контроллеры представления находятся в цепочке респондента.

Добавляя addictionViewController.view в качестве подпредставления, вы получаете два активных контроллера и загружаете одно перо поверх другого. Чудо, что вы не видите больше проблем, чем просто отсутствие прокрутки в веб-представлении.

Все виды, активные в любое время, должны контролироваться одним контроллером. Единственными исключениями из этого правила являются контроллеры навигации и контроллеры панели вкладок (которые ведут себя не так, как другие контроллеры). Для всех других представлений свой контроллер на экран.

Вам необходимо либо объединить два контроллера, либо создать два совершенно отдельных представления, отображающих по одному.

...