【问题标题】:Objective C, iOS, What options are there to add some text on top of an image in an UIImageView?Objective C,iOS,有哪些选项可以在 UIImageView 中的图像顶部添加一些文本?
【发布时间】:2011-05-20 16:27:17
【问题描述】:

我需要以编程方式添加一些数字/文本,以便它显示在我为多个 UIImageViews 指定的图像之上。我的用户也可以在屏幕上拖动图像视图。我需要文本同时移动。要移动图像视图,我使用此代码..

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {

for (id football in multipleFootballs) {
    UITouch *touch = [touches anyObject];
    if ([touch view] == football) {
        CGPoint pt = [[touches anyObject] locationInView:football];
        CGRect frame = [football frame];
        frame.origin.x += pt.x - startLocation.x;
        frame.origin.y += pt.y - startLocation.y;      
        [football setFrame:frame];
    }
  }
}

【问题讨论】:

  • 因为 UIImageView 是 UIView 你可以添加一个 UILabel 作为子视图。
  • @Nick,我想如果那样的话,你的意思是在界面生成器中为每个图像视图添加一个标签吗?这似乎有点乱。
  • 不,你必须在运行时这样做,不可能将带有 IB 的子视图添加到 UIImageView。
  • @Nick,嗯,我想我可能对表格视图中的自定义单元格做了类似的事情。认为我只需要设置延迟并添加为子视图。
  • 您一直在使用 IB 添加子视图,但是如果您还没有以编程方式完成,请给我一个提示,我会在这里放一些代码。

标签: objective-c ios uiimageview


【解决方案1】:

几乎任何UIViewUIView 后代都可以作为子视图添加到任何其他UIView。因此,您可以使用您的文本创建一个UILabel,并将其作为子视图添加到您的UIImageViews,使用适当的CGRect 用于UILabel 的框架,将其放置在您想要的UIImageView 中的位置。

【讨论】:

    【解决方案2】:

    您可以继承 UIImageview 并将 UILabel 添加为子视图。然后你可以编辑标签,它会无缝工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多