2012-09-07 81 views
1

我有一個TableView中一個黑暗的透明 背景,我想有一個填充 我試圖完成,使用contentInsetscontentSizecontentOffset其中:如何獲得TableView內的填充?

CGFloat padding = 10.0f; 
CGSize size = self.tableView.bounds.size; 
size.width -= (padding*2); 
size.height -= (padding*2); 
self.tableView.contentSize = size; 
self.tableView.contentInset = UIEdgeInsetsMake(padding, padding, padding, padding); 
self.tableView.contentOffset = CGPointMake(-padding, -padding); 

這是行不通的。 我得到填充,但單元格 也沒有調整大小,也沒有重新定位。

我知道,我可以將TableView嵌套在另一個View中,但是應該有另一個解決方案。

編輯:

我其實是有一個誤解爲「contentSize」的含義。 這不是視口的大小,而是您指定內容的實際大小。 所以我可能要..

  1. 調整單個細胞可能的話(可能與TableView中的佈局過程中發生碰撞)
  2. 應用內容偏移到的TableView如上
+0

您想要填充背景以及表格元素? – Kyle

+0

不,只有表格元素 – roplacebo

回答

2

對於寬度,你將不得不與每個細胞框架的混亂。至於頂部和底部插圖,請使用setContentInset:

1

如果您想要爲你的tableview提供一個簡單的改變它的框架。

如果你想爲你的細胞填充,試試這個代碼:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { 

     static NSString *CellIdentifier = @"Custom"; 

     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 
     if (cell == nil) { 
      CGRect cellFrame = CGRectMake(20,0,200,200); //CHANGE FRAME FOR YOUR APP 
      UITableViewCell *cell = [[[UITableViewCell alloc] initWithFrame:cellFrame reuseIdentifier:CellIdentifier] autorelease]; 

     } 

      //INSERT YOUR CODE TO RETRIVE TEXT TO INSERT INTO A CELL 

    return cell; 
} 
+0

我需要填充tableView,而不是單個單元格 – roplacebo

+0

THen更改tableViews框架而不是單元格。 – Hackmodford