2013-04-28 89 views
0

我試圖將自定義UIButton與圖像放在自定義tableview單元格中,以將其用作複選標記,第1次水龍頭,隱藏複選標記,並且下一次水龍頭將其復位... i '嘗試下面的代碼「示例代碼」來執行此功能,但它不隱藏複選標記,即「自定義UIButton」。 不確定我在這裏錯過了什麼?無法隱藏didSelectRowAtIndexPath中的自定義複選標記

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSLog(@"%@",indexPath); 

    TableViewCell *customCell = [[TableViewCell alloc]init]; 
    if (customCell.checkMarkButton.hidden == NO) { 
    customCell.checkMarkButton.hidden = YES; 
    } else { 
    customCell.checkMarkButton.hidden = NO; 
    } 
} 

回答

1

問題是在didSelectRowAtIndexPath中分配了一個新的單元格。

試試這個:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
     TableViewCell *customCell = (TableViewCell*)[tableView cellForRowAtIndexPath:indexPath]; 
     customCell.checkMarkButton.hidden = !customCell.checkMarkButton.hidden; 
} 
+0

感謝您的答覆球員,我試過的建議,但我得到一個警告「不兼容的指針類型,初始化‘TableViewCell *’類型‘的UITableViewCell’的表現」 TableViewCell是一個自定義單元類 – DevCali 2013-04-28 20:01:06

+0

只是做一個演員。我編輯了我的答案 – 2013-04-28 20:35:12

+0

謝謝,得到它的工作! – DevCali 2013-04-28 20:52:42

2

替換此行:TableViewCell *customCell = [[TableViewCell alloc]init];本: TableViewCell *customCell = [tableView cellForRowAtIndexPah:indexPath];。你不必創造一個新的細胞,只是得到一個被挖掘的細胞。