我在開發tableview自定義單元格時經常遇到這個問題。我有一個tableview,它有很多自定義的單元格(一個UIImageView和UILabel)當用戶點擊任何這個單元格推新UIViewController和用戶填充一些數據,並點擊「保存」viewcontroller推回委託方式。UITableview單元格保留自定義圖像視圖過濾器
在此代理方法中,我檢查點擊單元格並更改該色調顏色(如選定狀態,但我只更改自定義的ImageView色調顏色)。所以這個改變是正確的,但當我滾動任何垂直方向色調消失。下面的圖片和代碼正確計算出來。
當彈出從委託方法查看控制器(正常工作)
當滾動垂直方向錫
// Custom cell
@interface CustomCell : UITableViewCell
@property(strong, nonatomic) UIImageView *imageView;
@property(strong, nonatomic) UILabel *titleLabel;
@end
// Custom Cell implementation nothing special here.
// UIViewController delegate method when pop back
// I'm filling specific color
@interface UIViewController
@property (strong,nonatomic) CustomCell *myCustomCell;
@end
@implementation UIViewController
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
...
_myCustomCell = (CustomCell *)[self.tableView dequeueReusableCellWithIdentifier:@"CustomCell" forIndexPath:indexPath];
...
}
- (void)userTappedBackButton {
_myCustomCell.imageView.image = [cell.customImageView.image imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
_myCustomCell.imageView.tintColor = [UIColor colorWithRed:0.27 green:0.58 blue:0.98 alpha:1];
}
@end
謝謝老兄。這就是我需要的。但另一種方法是所有單元的負載都很低。但有時會造成麻煩。 –
經過一些測試後,我發現這不是一個好的選擇。 –
我很想知道爲什麼,以及你最終得到什麼解決方案 – bdalziel