我的图像框架在单元格中不起作用

时间:2013-04-04 18:27:10

标签: iphone image uitableview

我在单元格视图的每个单元格中添加了图像。我不能设置我的图像框架PLZ帮助我这样做。

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
      UIImageView *myImageView = [[UIImageView alloc] initWithFrame:CGRectMake(10,   lblzip.frame.size.height+lblzip.frame.origin.y+2,30,30)];
                        myImageView.tag = 120;


                        myImageView.image = [UIImage imageNamed:@"call.png"];

                        [cell.imageView setContentMode:UIViewContentModeScaleAspectFit];

     cell.imageView.image=myImageView.image;                            


                        cell.imageView.userInteractionEnabled=YES;


                        UITapGestureRecognizer *tapped = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageSelectedInTable:)];

                        [cell.imageView addGestureRecognizer:tapped];
                        [tapped release];

  }

但是我的图像宽度和高度不是30.它就像资源文件中的图像一样。

我的研究给了我一个使用布局子视图的想法。如何调用和使用它们

   -(void)layoutsubviews
     {
      }

1 个答案:

答案 0 :(得分:1)

你的代码毫无意义。

  1. 您指的是cell,但没有名为cell的变量。您忘记致电dequeue并创建单元格

  2. 您有两种不同的图像视图:

    UIImageView *myImageView = ...
    

    cell.imageView
    
  3. 这不是你的真实代码。它永远不会编译。如果您没有显示真正的代码,没有人可以帮助您。

    由于您的代码现在正确,您的问题的答案将是:您正在创建大小为myImageView的{​​{1}},但您甚至从未将其放入您的单元格中,因此它无关紧要。你有一个叫30,30的不同的东西,那就是你看到的图像视图。

    编辑:现在你已经改变了你的代码。但是您仍然在设置错误图像视图的框架。您正在将cell.imageView图像设置为cell.imageView图像。但这与图像的大小或图像视图的帧无关。我所说的仍然是正确的:你创建的myImageView大小为myImageView,但你甚至从未将它放入你的单元格中,因此它无关紧要。