2012-05-08 46 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的XIB是一個視圖,768寬200高(I做了一個我基於Pad的UITableView單視圖應用程序)。其view內部爲UIScrollView,將佔據整個[view frame]區域。然後我在裏面放了一個UIView

我的測試給了我一個頭是一個橙色的矩形,我可以滾動它圍繞你所期望的。這使我相信,也許你需要檢查你的imagesScrollView的衝擊/支柱在Interface Builder。確保所有邊距和寬度都是固定/靈活的,因爲您需要它來正確顯示。

+0

它不起作用 – Oleg

+0

它對我有用。你有什麼嘗試?你用'UITableView'更換股票'UIView'在'ViewController'的XIB?如果你這樣做,它應該工作。你能提供更多關於它失敗的信息嗎? – mbm29414