1

我想要在 iPhone 中使用以下类型的布局(使用 UItableview、Uitableviewcell、Uilabel 和 Uiimageview)。

在此处输入图像描述

(假设浅蓝色点 == uiimageview

在每个 UItableviewcell 中,我有 1 个 UIimageview 和 1 个 Uilabel。两个控件的起始灯是相同的左上角。我的 uilabel 的内容是动态的,而图像只是一张静态图像。

与 uilabel 的内容相比,图像非常小。所以,我的图像垂直和水平居中。但我只想在左上角。

编辑:

我已经这样做了Uitableviewcell

但是如果 Uilabel 的行数是 2 或更多,那么 imageview 的位置就会改变。它在垂直和水平方向居中。但我只希望图像视图在左上角位置是否 uilabel 的第 1、2、3 行 ....n

我的代码在这里:

    In CommonCustomeCell.m



- (id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier {

self = [super initWithFrame:frame reuseIdentifier:reuseIdentifier];


if (self) {

 dotImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"dotPoint.png"]];

        dotImage.opaque = YES;

        [self.contentView addSubview:dotImage];

    titleName3 = [[UILabel alloc] init];

titleName3.textAlignment = UITextAlignmentLeft;       

titleName3.backgroundColor = [UIColor clearColor];

        titleName3.adjustsFontSizeToFitWidth = FALSE;

        titleName3.font = [UIFont systemFontOfSize:14];

        titleName3.textColor = [UIColor colorWithRed:17.0/255.0 green:72.0/255.0 blue:147.0/255.0 alpha:1];

        titleName3.lineBreakMode = NSLineBreakByWordWrapping;     

        [titleName3 sizeToFit];     

        [self.contentView addSubview:titleName3];

}

-(void)layoutSubviews

{

    frame = CGRectMake(20,2,self.bounds.size.width - 45 , self.bounds.size.height);   

    [titleName3 setFrame:frame];

 frame = CGRectMake(4,10,dotImage.frame.size.width,dotImage.frame.size.height);

    self.dotImage.frame = frame;

}

}

在 RootViewController.m 文件中

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

    {

     CommonCustomeCell *cell = (CommonCustomeCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

                if (cell == nil) {                

                    cell = [[[CommonCustomeCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];

    }

     [cell.dotImage5 setImage:[UIImage imageNamed:@"myLogo.png"]];

     cell.titleName3.text = [[myArr objectAtIndex:indexPath.row] objectForKey:@"title"];

    }

    }

帮助我,提前谢谢。

4

2 回答 2

3
  • UITableView使用部分和分组样式创建。
  • 您的loarem Ipsm(文本)设置为章节标题。
  • 并创建UITableViewCell自定义单元格UIImageViewUILabel显示文本“loarem Ipsm is simple dummy”
于 2013-02-19T09:11:58.827 回答
0

您是否为 CustomCell 视图设置了自动调整大小,如下图所示?只应启用顶部和左侧。

在此处输入图像描述

于 2013-02-19T09:28:48.060 回答