我有一个自定义的TableView,如下图所示
我的想法是在tableview
第四行没有image
那段时间我想将label
frame
左边等于image
左边如何我可以这样做吗?
答案 0 :(得分:2)
如果您希望标签位于与imageView相同的左侧坐标上,则可以使用以下代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
// do the below code after setting the image in your imageView.
if (imageView.image == nil)
{
CGRect rectNew = CGRectMake(imageView.frame.origin.x, cell.textLabel.frame.origin.y, cell.textLabel.frame.size.width, cell.textLabel.frame.size.height);
cell.textLabel.frame = rectNew;
}
}
答案 1 :(得分:1)
在cellForRowAtIndexPath:
方法中,如果图片为零,则将imageView的框架设置为cell.textLable.
,如下所示..
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (imageView.image == nil) {
imageView.hidden = YES;
cell.textLabel.frame = CGRectMake(imageView.frame.origin.x, imageView.frame.origin.y, setWidth, setHight);//set Hight and width of yout textlable of cell
}
}