【问题标题】:Trying to create a rectangle filled with blue UIImage object尝试创建一个填充有蓝色 UIImage 对象的矩形
【发布时间】:2011-03-20 17:01:53
【问题描述】:

我想创建一个蓝色矩形图像并在我的视图中查看它,但这段代码似乎不起作用:

  CGRect imageRect = CGRectMake(50, 50, 64, 40);
  UIGraphicsBeginImageContext(imageRect.size);
  [[UIColor blueColor] set];
  UIRectFill(imageRect);
  UIImage *aImage = UIGraphicsGetImageFromCurrentImageContext();
  UIGraphicsEndImageContext();
  UIImageView *myImageView = [[UIImageView alloc] initWithImage:aImage];
  [self.view addSubview:myImageView]; 

有人可以帮我解决吗?

谢谢,

Sagiftw

【问题讨论】:

    标签: iphone objective-c cocoa-touch uikit uiimageview


    【解决方案1】:

    您的上下文是 64 点乘 40 点。您在 40 点高的上下文中填充了从原点开始 50 点的矩形。这使它超出了范围,并且您在上下文范围之外绘制的任何内容都不会显示。

    将矩形的原点设置为 0,0,即上下文的原点。然后,您的 64×40 点矩形将完全在 64×40 点上下文的范围内。

    如果您确实想在上下文原点下方和右侧 50 点处绘制矩形,那么您需要使上下文的大小至少足够大以容纳该边距加上矩形的大小。如果您还希望在其他尺寸上具有相同的边距,则上下文的尺寸应该是矩形的尺寸加上 100 磅宽乘以 100 磅高(每个轴上矩形的每边各 50 磅)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-03-21
      • 2015-01-13
      • 1970-01-01
      • 1970-01-01
      • 2020-10-28
      • 2018-09-28
      • 1970-01-01
      相关资源
      最近更新 更多