2011-12-04 37 views
0

我開始與iOS開發,我想要在表視圖中實現以下行爲: 列表元素1不能被選中,當選擇其他行時,列表成爲所選的一個。我知道是無意義的,它只是一個練習。順便說我的代碼是:更改表視圖的選擇

-(NSIndexPath *) tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 
NSUInteger row =[indexPath row]; 
if (row==0){ 
    return nil; 
} 
    return indexPath; 
} 

它爲被選中避免行0,現在我需要選擇的元素來改變以前的當行!= 0。我該怎麼做?

回答

0

UITableView有一個名爲selectRowAtIndexPath:animated:scrollPosition:(文檔鏈接爲您)的方法,您可以在其中選擇不同的行。

有一點需要注意:你必須通過NSIndexPath選擇一行(一旦你掌握了它就不會太難設置),並且當你編程地調用selectRowAtIndexPath時可能會再次調用你的willSelectRowAtIndexPath所以你需要找出一種方式來忽略這個電話,同時關注用戶用他們的手指進行的操作。