我想用 webview 替换它,这样我就可以显示 html。
PO(cell.subviews);
PO(cell);
PO(cell.contentView.subviews);
webview 需要与 UITableViewCell 的 frame 相同。
这就是我们得到的:
2013-01-31 12:37:35.204 BadgerNew[3888:c07] cell.subviews: (
"<UITableViewCellContentView: 0xa057140; frame = (0 0; 320 44); layer = <CALayer: 0xa057180>>"
)
2013-01-31 12:37:35.204 BadgerNew[3888:c07] cell: <UITableViewCell: 0xa0c37a0; frame = (0 0; 320 44); text = 'atm'; layer = <CALayer: 0xa0c8530>>
2013-01-31 12:37:35.205 BadgerNew[3888:c07] cell.contentView.subviews: (
"<UILabel: 0xa0d12a0; frame = (0 0; 0 0); text = 'atm'; clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0xa0571b0>>"
)
此外,为了进一步确认
po [cell textLabel]
(UILabel *) $1 = 0x0a0d12a0 <UILabel: 0xa0d12a0; frame = (0 0; 0 0); text = 'atm'; clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0xa0571b0>>
那么普通 UITableViewCell 的最终标准框架是什么?
我也做过
-(void)layoutSubviews
{
PO(self);
PO(self.textLabel);
while (false);
}
并得到
2013-02-01 09:36:02.048 BadgerNew[1436:c07] self.textLabel: <UILabel: 0x8923390; frame = (0 0; 0 0); clipsToBounds = YES; userInteractionEnabled = NO; layer = <CALayer: 0x89e8fc0>>
在做
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath {
while (false);
}
产生相同的结果
然后我做了:
-(void)layoutSubviews
{
[super layoutSubviews];
PO(self);
PO(self.textLabel);
while (false);
}
再次,另一个 0 帧。