我正在开发一款可以在用户屏幕上创建实体明信片的应用。为了渲染最终的明信片图像,我重新绘制显示给用户的视图,并使用UIGraphicsGetImageFromCurrentImageContext()来获取打印的最终图像。这很好。
问题是我的日期标签在屏幕中居中,我使用自动布局和内在内容大小来设置日期标签的位置。无论月份名称中有多少个字符(6月对9月给出不同的展示位置),它都将始终居中。当我重绘这个时,我不能在我的ImageContext中为我的dateLabel设置一个矩形,因为我不知道标签的确切位置。在我在ImageContext中重绘屏幕之前,我需要知道我的日期标签的确切位置。我尝试这样访问内在内容大小:
CGSize *labelSize = self.dateLabel.intrinsicContentSize;
这给出了错误:使用不兼容类型'CGSize'(又名'struct CGSize')的表达式初始化'CGSize *'(又名struct CGSize *')
如何获取设置为内在内容大小的标签的确切位置(x,y,宽度,高度)以重绘ImageContext中的标签?