2012-11-15 107 views
1

我想刪除這些我不使用但不知道如何的tablecells。我已經指定了我想要的單元格數量,但這些不需要的單元格一直在顯示,就像這樣;不需要的Tablecells顯示

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section 
{ 
return 3; 
} 

enter image description here

人知道如何解決這個問題?在此先感謝

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { 
if ([self numberOfSectionsInTableView:tableView] == (section+1)) 
{ 
    return [UIView new]; 
} 
return nil; 

但無濟於事,因爲我得到一個sigabrt錯誤..爲什麼?

+0

你想要什麼? –

+1

[在iphone sdk中消除UITableView下的額外分隔符?](http:// stackoverflow。com/questions/1369831/elimination-extra-separators-below-uitableview-in-iphone-sdk) – jrturton

+0

謝謝jrturton,這的確是同樣的問題,謝謝你指點我。 (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section if([self numberOfSectionsInTableView:tableView] ==(section + 1)) return [UIView new]; } return nil;' – DanKiiing

回答

1

我個人解決它使用:

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { 
    return 0.1; 
} 

而不是viewForFooterInSection:

+0

感謝您的輸入,但我用我的答案更新了問題,試用一下,讓我知道您的想法,這似乎是最乾淨的方式。 @rdurand – DanKiiing

+0

你爲什麼發表一個接受你自己的答案?你剛剛接受了我所說的話!你應該刪除你的答案並接受我的答案,如果它解決了你的問題。您只是創建相同答案的重複項,並會因此得到較低的評分。 – rdurand

+0

我的答案爲我工作,這就是爲什麼我投了贊成票,我相信你可能也會這樣做,因此我投了贊成票。這不是重複的,因爲它的答案略有不同,我不明白重要的是採用不同的方式來執行投票方法,他們會派上用場,所以我不知道爲什麼我會被拒絕投票。我只是在這裏學習,哦,我很好 – DanKiiing

0

試試這個

- (void) addFooter 
{ 
UIView *v = [[UIView alloc] initWithFrame:CGRectZero]; 

[self.myTableView setTableFooterView:v]; 

[v release]; 
} 

您可以從

Eliminate extra separators below UITableView

+0

感謝您的輸入,但我用我的答案更新了問題,試用它並讓我知道您的想法,它似乎是最乾淨的方法。 – DanKiiing

0

你有兩種選擇做這個嘗試不同的選擇。

  1. 設置的tableView風格Grouped()
  2. 返回單元格高度類似tableViewHeight/number of cellsheightForRowAtIndexPath:方法:

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 
    { 
        int tableViewHeght = 720; 
        return tableViewHeght * 3; 
    } 
    
+0

感謝您的輸入,但我用我的答案更新了問題,試用一下,讓我知道您的想法,這似乎是最乾淨的方式。 – DanKiiing

0

你可以這樣做也

1。創建一個UITableCell類並將該類附加到UITableView。 2.And您的UITableView屬性改變BackGroundColour是ClearColour

然後你就可以運行並顯示

供您參考,您可以使用背景圖片也

+0

感謝您的輸入,但我用我的答案更新了問題,試用並讓我知道您的想法,這似乎是最乾淨的方式。 – DanKiiing

0

我看到的答案是使用頁眉/頁腳或嘗試使用分組表格視圖,一切似乎都很好,也是更清潔的解決方案。但我寧願選擇另一個。將表格視圖分隔符樣式分配給無。在cellForRowAtIndexPath方法中聲明一個UIImageView實例。製作高度爲1px,寬度爲320px的圖像,將其設置爲圖像視圖的圖像,並將其添加爲單元格的子視圖,y位置是單元格的高度。請記住自動釋放圖像視圖實例。由於同樣的autoreleasing完成,不會有任何內存問題,並且你可以決定你必須展示它的所有單元格,從而使它更靈活一些。

-1

我能夠通過在我的代碼中解決這個問題;

- (float)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { 
// This will create a "invisible" footer 
return 0.01f; 
} 

希望這可以幫助別人,和平!

+0

好吧,它爲我工作,投下它是不公平的,只要它可以幫助別人,沒什麼大不了的:) – DanKiiing