在我的自定義表視圖單元格子類中,其中一個文本標籤的位置取決於ivar(NSString)的內容。 (即:如果NSString是空字符串,則文本標籤的框架位置不同)。UITableViewCell自定義子類視圖未更新
如果更新如下位置:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
customOverlayCell *myCell = [self.tableView dequeueReusableCellWithIdentifier:@"CustomOverlayCell"];
if ([buildingFName isEqual:@""])
{
CGRect titleLabelFrame = myCell.titleLabel.frame;
titleLabelFrame.origin.y = 45;
[myCell.titleLabel setFrame:titleLabelFrame];
}
return myCell;
}
我已刪除那些不相關的部分代碼。
結果是出現在屏幕上的第一個單元格的佈局得到了正確更新,但滾動後出現的視圖佈局未更新。
我沒有正確使用dequeueReusableCellWithIdentifier嗎?或者是其他的錯誤?
編輯:從EJV
解決方案:
CGRect titleLabelFrame = myCell.titleLabel.frame;
if ([buildingFName isEqual:@""])
{
titleLabelFrame.origin.y = 45;
} else {
titleLabelFrame.origin.y = 37;
}
[myCell.titleLabel setFrame:titleLabelFrame];
像魅力一樣工作。我的節目非常糟糕。謝謝。 – ratsimihah 2012-07-31 22:13:51
@HeryR。沒問題。 – EJV 2012-07-31 22:24:14