2016-01-24 29 views
0

我有有有2個標籤&一個文本框自定義單元格級表視圖之間切換斯威夫特自定義單元格標註文本框

結果集將顯示在標籤中的所有行的一個(名字)然後有一個if else語句來顯示第二個標籤或文本框。

例如
標籤1標籤2
喬博客學生
道路亞軍[文本框]
等等

然而,當行獲取滾動關閉屏幕的新行標2犯規得到刷新&已經老了數據,但標籤1是完美的。

例如
標籤1標籤2
喬博客學生
跑腿學生
等等

下面

是代碼片段

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 
    //let size = CGSizeMake(30, 30) 
    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! SBGestureTableViewCell 


    if strPaymentMethod[indexPath.row] == "Student" && dctMemAttEventDetails["StuDiscVenue"]! as! String == "Yes" 
    { 
     cell.txtMemberPaid.hidden = true 
     cell.lblPaymentMethod!.text = strPaymentMethod[indexPath.row] 

    } 

    else 
    { 
     cell.lblPaymentMethod.hidden = true 
     cell.txtMemberPaid.hidden = false 
    } 

    cell.lblMemberName!.text = strFirstname[indexPath.row] + " " + strSurname[indexPath.row] + " : " + strPaymentMethod[indexPath.row] 

    return cell 
} 

的要求2個截圖

第二個屏幕截圖顯示了相同的信息,但您可以看到這個例子le行(Know itall)應該是現金&有文本框但是它有標有'學生'的標籤,在第一個屏幕截圖中它是正確的(如果你看得更遠,你會在第二屏幕上看到其他一些不正確的東西)

我知道它與單元格在屏幕上滾動時重複使用有關,但數據沒有被刷新,具體來說就是其中的if/else語句中的數據不能正確刷新/重繪。

我希望通過截圖來清除你的問題/評論。如果不是,請評論&生病嘗試不同的方法來顯示我的問題。 如果您有任何進一步的問題讓我知道盡快回答他們

感謝您的任何&所有的幫助。

This is of the tableView when first loaded & no rows scrolled off screen
This is of the tableView when scrolled down then back up

+1

不應該在'if'子句中設置'cell.lblPaymentMethod.hidden = false'嗎? – vacawama

回答

0

我們願意提供幫助,請與無論是圖像和視頻講解多,除去未需要的信息,如果文本框不是讓你一個問題,你可以忽略它,並不提及它,請具體,所以我們可以幫助.. 祝你好運。

編輯:是的,你忘了揭示一個隱藏的對象?

+0

Zazu只是讓你知道我增加了更多信息..讓我知道如果你需要更多 – Brian

+0

男人,什麼是label1和label2?你有lblPaymentMethod和txtMemberPaid,哪些不刷新? – DeyaEldeen