让我先从我的代码开始:
UIImage *tempImage = [UIImage imageNamed:@"TileMap.gif"];
[tempImage drawInRect:CGRectMake(0, 0, tileSize, tileSize)];
mapLabels[w][h] = [[UILabel alloc] initWithFrame:CGRectMake(cursor.x, cursor.y, tileSize, tileSize)];
mapLabels[w][h].text = [NSString stringWithFormat:@"%d", map[w][h]];
mapLabels[w][h].backgroundColor = [UIColor colorWithPatternImage: tempImage];
mapLabels[w][h].textAlignment = UITextAlignmentCenter;
[self.view addSubview:mapLabels[w][h]];
我用UILabels
制作了一张瓷砖地图。我想在标签上添加Image
,因此我使用了colorWithPatternImage
。它工作但我的瓷砖图片分辨率非常高,我的UILabel
瓷砖可以是任何尺寸,所以我需要图像大小相同。我目前正在尝试使用drawInRect
扩展它是不行的,有什么提示吗?
答案 0 :(得分:0)
UIImages有一个scale属性。你可以尝试类似的东西:
tempImage.scale = mapLabels[w][h].tileSize.x / tempImage.tileSize.x