如何根据UITableViewCell中的图像可用性设置TextField框架

时间:2012-11-16 06:57:20

标签: iphone uitableview ios6 frame

我有一个自定义的TableView,如下图所示

My TableView

我的想法是在tableview第四行没有image那段时间我想将label frame左边等于image左边如何我可以这样做吗?

2 个答案:

答案 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
    }
}