我有UITableViewCell的具有目標的功能這樣的按鈕:爲什麼uitableviewcell在滾動時發生變化?
likeButton?.addTarget(self, action: "likeButtonTapped:", forControlEvents: UIControlEvents.TouchUpInside)
設置我的按鈕標題是這樣的函數內部:
sender.setTitle("\(addedLikeCount) Likes", forState: UIControlState.Normal)
但每當我滾動視圖向上或向下,我的按鈕標題更改爲默認值。爲什麼會發生?有沒有什麼辦法可以解決這個問題,而無需重新加載表?
隨時給我任何意見,在迅速或客觀的c。無所謂。
UPDATE
所以我做了下面的代碼在我的功能:
self.likeArray.replaceObjectAtIndex(index!, withObject: addedLikeCount)
sender.setTitle("\(self.likeArray[index!]) Likes", forState: UIControlState.Normal)
這對我的UITableViewCell:
var totalLike = likeArray[indexPath.row] as? String
currentLikeCount = totalLike
likeButton?.setTitle("\(totalLike)", forState: UIControlState.Normal)
它的工作,但是當我滾動絲毫不差成爲再次默認
因爲細胞正在被重用,因此刷新至下'-cellForRowAtIndexPath',解決原來的設置是有一個全局變量,然後下重裝安裝'-cellForRowAtIndexPath' – 0yeoj
我該怎麼辦,沒有reloaddata? –
獲得superview(單元格)被按下的'likeButton'是,然後更改/設置標題,但不重新加載表並不滾動否則它將被重用並再次刷新,這是tableview的自然行爲(用於內存處理)..在你的情況意思..這是你唯一的選擇.. :) – 0yeoj