2012-01-24 13 views
2

我一直在網上尋找一個解決方案,但我似乎無法找到任何東西,我卡住了。像iPhone聯繫人一樣在UITableView中顯示元素,分爲按字母順序的部分?

我有一個的NSMutableArray:

productsToDisplay 

,下設產品對象的堆,每個具有「名稱」屬性例如

Product *product = .... 

NSLog(@"%@", product.name); 

每個單元格都顯示產品名稱,單擊時顯示有關該產品的更多信息。

但是,我有很多產品,並希望將它們分解爲UITableView中的字母部分(如iPhone上的聯繫人)。

有人能指出我正確的方向嗎?

非常感謝,

傑克

[編輯] 我知道我可以排序的name屬性的數組,但我也想向下穿過右側的快速搜索欄的UITableView,以便用戶可以輕鬆找到他們正在尋找的部分。

+0

使用CusstomTableviewcell –

+0

我只是想在單元格中顯示的名字,所以我很好在該部門,我想將單元格按照字母順序排列,例如在iPhones Contacts應用程序中。 –

+0

難道你不能只按名稱排序包含產品詳細信息的數組,而不是重新加載表以顯示排序元素? –

回答

3

添加字母節到你的tableview,那麼你必須創建與tableview中的部分對應的字母數組。像段[0] - 'A',段[1] - 'B' 等

添加 - (NSArray的*)sectionIndexTitlesForTableView:(UITableView的*)的tableView { 返回鍵; } //代表要求索引中顯示值的數組。

所以這個數組中的第一個項目將採取用戶到第一部分,這是一款0.1

4

使用該委託,以顯示右手部分名單: -

- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView { 
    return searchArray; 
} 

使用該委託按照右手名單表內容(部分)聯繫起來: -

- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index { 
    if (index == 0) { 
    [tableView scrollRectToVisible:[[tableView tableHeaderView] bounds] animated:NO]; 
     return -1; 
    } 
    return index; 
} 
相關問題