2014-04-08 59 views
0

我有一個TableViewController這僅僅是一個在tableview中的UIViewController它的UITableView底部行的arent可見

我這個表視圖控制器添加到多個屏幕作爲一個子視圖控制器

一切運作良好,除了事實上,在過去的2排的話,有時不可見

它們的存在,如果它的一半是可見的,我能看到的數據

的一部分,這是我的設置:

[super viewDidLoad]; 
_purchaseInvoiceListTable = (TableViewController *)[self.storyboard viewController:[TableViewController class]]; 
_purchaseDataSource = [[PurchaseInvoiceListDataSource alloc]init]; 
User *user = [self.userSettings getUserDetails]; 
[_purchaseDataSource setPurchaseSummaryInfo:[user purchases]]; 
[_purchaseDataSource setGroupDelegate:self]; 
[_purchaseInvoiceListTable setDataSource:_purchaseDataSource]; 
[_purchaseInvoiceListTable.view setFrame:_purchaseInvoiceListTableContainer.bounds]; 
[_purchaseInvoiceListTableContainer addSubview:[_purchaseInvoiceListTable view]]; 
[_purchaseInvoiceListTable willMoveToParentViewController:self]; 
[self addChildViewController:_purchaseInvoiceListTable]; 
[_purchaseInvoiceListTable didMoveToParentViewController:self]; 
_purchaseInvoiceListTableContainer.clipsToBounds = YES; 
[_purchaseInvoiceListTable.tableView.layer setBorderColor:[UIColor clearColor].CGColor]; 
+0

根據您_purchaseInvoiceListTableContainer的大小/幀上,下面的「_purchaseInvoiceListTableContainer .clipsToBounds = YES;「如果幀太大,可能會使溢出不可見。很顯然,如果框架/界限超出屏幕範圍,那麼它也不可見,但從您提供的代碼片段中看不出來。 ;) –

+1

嘗試通過設置[tableView setContentInset:UIEdgeInsetsMake(20,0,50,0)]; –

+0

@Shan把你的答案我會接受,50是不夠的,200的伎倆。謝謝 –

回答

0

在這種情況下,試圖通過設定的UITableView

contentInset財產例如

[tableView setContentInset:UIEdgeInsetsMake(30, 0, 200, 0)];