2012-05-08 2 views
0

Я пытаюсь добавить UIScrollView с пейджингом в качестве заголовка в мою таблицу, но, к сожалению, он отображается неправильно. htableHaderView изменен на размер моего imagesScrollView, но отображается только половина его, а остальная область пуста.tableHeaderView не отображает UIView правильно

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    ImagesViewController *imagesScrollView = [[ImagesViewController alloc] initWithNibName:@"ImagesViewController" bundle:nil]; 


    tableView.tableHeaderView = imagesScrollView.view; 
    imagesScrollView = nil; 

} 

Спасибо за помощь

ответ

0

Я попытался следующий код:

ViewController.h

#import <UIKit/UIKit.h> 
@interface ViewController : UITableViewController 
@end 

ViewController.m

#import "ViewController.h" 
#import "ImagesViewController.h" 
@implementation ViewController 
- (void)viewDidLoad { 
    [super viewDidLoad]; 
    ImagesViewController *imageVC = [[ImagesViewController alloc] initWithNibName:@"ImagesViewController" bundle:nil]; 
    [[self tableView] setTableHeaderView:[imageVC view]]; 
    imageVC = nil; 
} 
@end 

ImagesViewController.h

#import <UIKit/UIKit.h> 
@interface ImagesViewController : UIViewController 
@property (strong, nonatomic) IBOutlet UIScrollView *ScrollView; 
@property (strong, nonatomic) IBOutlet UIView *ViewInScrollView; 
@end 

ImagesViewController.m

#import "ImagesViewController.h" 
@implementation ImagesViewController 
@synthesize ScrollView; 
@synthesize ViewInScrollView; 
- (void)viewDidLoad { 
    [super viewDidLoad]; 
    [[self ViewInScrollView] setFrame:CGRectMake(0, 0, 768 * 2, 400)]; 
    [[self ViewInScrollView] setBackgroundColor:[UIColor orangeColor]]; 
    [[self ScrollView] setContentSize:[[self ViewInScrollView] frame].size]; 
} 
@end 

ImagesViewController «s XIB представляет собой вид, 768 в ширину и 200 высотой (I сделал i Pad-based UITableView приложение с одним представлением). Внутри его view находится UIScrollView, установленный на весь участок [view frame]. Затем я положил в него UIView.

Мое тестирование дает мне заголовок, который представляет собой оранжевый прямоугольник, и я могу прокрутить его вокруг, как вы ожидали. Это заставляет меня поверить, что, возможно, вам нужно проверить удары/стойки вашего imagesScrollView в Interface Builder. Убедитесь, что все поля и ширина являются фиксированными/гибкими, так как вам нужно, чтобы они отображались правильно.

+0

не работает – Oleg

+0

Это делает для меня. Что вы пробовали? Вы заменили «UIView» в xib ViewController 's с помощью' UITableView'? Если вы это сделаете, это должно сработать. Можете ли вы дать больше информации о том, как это происходит? – mbm29414

Смежные вопросы