UITextView, пользователь прокручивает uitextview, но затем он возвращается в исходное положение, что не так?

В настоящее время у меня есть UITextView, который содержится в UIViewController, используя следующий код:

UIViewController *container = [[UIViewController alloc] init];
container.view.frame = CGRectMake(0, 0,
[UIScreen mainScreen].bounds.size.width, 1000);
//[UIScreen mainScreen].bounds.size.height

container.view.userInteractionEnabled = YES;
container.view.clipsToBounds = YES;

UIImageView *imgView = [[UIImageView alloc] 
initWithImage:[UIImage imageNamed:@"myImage.png"]];
imgView.frame = container.view.frame;

imgView.userInteractionEnabled = YES;
[container.view addSubview:imgView];
[imgView release];

UITextView *textContained = [[UITextView alloc] 
initWithFrame:CGRectMake(0, 0, container.view.bounds.size.width, 1000)];
//container.view.bounds.size.height

textContained.font = [UIFont fontWithName:@"Calibri" size:14];
textContained.scrollEnabled = YES;
textContained.editable = NO;

textContained.textColor = [UIColor whiteColor];
textContained.backgroundColor = [UIColor clearColor];
textContained.font = [UIFont boldSystemFontOfSize:14];

textContained.userInteractionEnabled = YES;
textContained.alwaysBounceVertical = YES;
textContained.contentSize = CGSizeMake(container.view.frame.size.width,
container.view.frame.size.height);

Затем я устанавливаю свое свойство текста UItextView с некоторым текстом, выходящим за пределы текущего размера экрана. Затем я добавляю свой UITextView в свой контейнер, используя следующий код.

 switch (indexPath.row) {
    case 0:
        textContained.text = @"LOTS AND LOTS OF TEXT";

        [container.view addSubview:textContained];
        [self.navigationController pushViewController:container animated:YES];
        [textContained release];

        break; 
    default:
        break;
 }
 [container release];

Когда я тестирую этот код, текст в UITextView выглядит нормально, и все выглядит нормально. Но проблема в том, что я пытаюсь прокрутить вниз, чтобы увидеть остаток текста. Каждый раз, когда я прокручиваю вниз, UITextView возвращается в исходное положение. Я пробовал несколько способов заставить это работать, но думаю, мне нужно немного свежего взгляда, чтобы увидеть, что я делаю не так.

Любая помощь приветствуется.


person Toret    schedule 22.11.2011    source источник
comment
попробуй удалить textContain.contentSize = ... и увидишь? все остальное выглядит нормально для меня   -  person Bryan Chen    schedule 22.11.2011


Ответы (1)


Во-первых, вы не хотите устанавливать contentSize для UITextView, поскольку он автоматически определяется длиной текста.

Попробуйте уменьшить высоту textView. Например:

UITextView *textContained = [[UITextView alloc] 
initWithFrame:CGRectMake(0, 0, container.view.bounds.size.width, 50)];

И дайте ему больше текста, например:

textContained.text = @"LOTS AND LOTS OF TEXT\nLOTS AND LOTS OF TEXT\nLOTS AND LOTS OF TEXT\n\nLOTS AND LOTS OF TEXT\nLOTS AND LOTS OF TEXT\n";
person mr.pppoe    schedule 22.11.2011
comment
Спасибо за ответ, ваше предложение привело меня к выводу, что я не вычитал размер панели вкладок, которая была у меня на месте. Большое тебе спасибо. Это сводило меня с ума ... нужен свежий взгляд. - person Toret; 22.11.2011