Попробуйте:
[textView setNeedsDisplay];
Оригинальный ответ
Вам бы не пришлось иметь дело с textview по-другому.
Сначала я беспокоюсь о том, что вы называете "loadview". Вы никогда не должны называть это напрямую. Он вызывается автоматически при необходимости.
Кроме того, вы должны объявить contentview перед циклом, и вы теряете память.
Другая ваша проблема в том, что вы никогда не меняете рамку каждого вида во время цикла. Все они имеют происхождение {0,0}. Насколько я вижу из вашего кода. Возможно, поэтому ваши взгляды скрыты.
Наконец, на заметке о стиле я бы не назвал меня контроллерами представления XXXXXview, в них должно быть слово controller.
CGRect frame;
ContentViewController *myContentViewController = nil;
for(int i=0; i< 5; i++){
myContentViewController = [[myContentViewController alloc] initWithNibName:@"ContentView" bundle:[NSBundle mainBundle]];
frame = myContentViewController.view.frame;
frame.origin.x=(frame.size.width*i);
myContentViewController.view.frame=frame;
myContentViewController.theLabel.text =[NSString stringWithFormat:@"hello again..%d", i];
[self.scrollView addSubview: myContentViewController.view];
[myContentViewController release];
}
Добавить:
Также проверьте свойство кадра scrollviews contentView:
scrollView.contentSize = CGSizeMake(numberOfContentViews*contentViewWidth, contentViewHeight);
Чтобы добавить больше:
Попробуйте добавить текстовое представление программно в viewDidload или viewDidAppear, чтобы увидеть, работает ли это.
После ваших комментариев, если бы мне пришлось сделать еще одно предположение, я бы сказал, что вы можете манипулировать textView где-то еще в вашем коде после его добавления. Начните комментировать любые строки, которые влияют на textView, и посмотрите, что произойдет.