【发布时间】:2013-07-01 23:06:22
【问题描述】:
我正在使用捏合手势识别器来处理缩放具有图像的按钮。我使用
建立了图像[self.button setImage:image forState:UIControlStateNormal];
[self.button setImage:image forState:UIControlStateHighlighted];
在我的捏手势识别器处理程序中,我通过改变其 frame.size 来缩放按钮:
self.button.frame = [self makeButtonFrame];
makeButtonFrame 使用当前比例的地方(由捏合手势识别器处理程序调整):
- (CGRect) makeButtonFrame {
CGRect frame = CGRectMake (STROKE_WIDTH + DISTANCE_FROM_STROKE,
STROKE_WIDTH + DISTANCE_FROM_STROKE,
self.scale * self.defaultWidth,
self.scale * self.defaultHeight);
return frame;
}
我发现我无法使用这种技术将按钮图像缩放到某个点之外。而且这个比例似乎因具体图像而异(双啊!)。这个比例似乎在 3-4 左右。
目前,我在捏合手势识别器中保守地将比例限制为 3 倍。
但是,我想要一种更具分析性的方法来确定最大比例。而不是仅仅根据我尝试过的一组图像进行估计。
【问题讨论】:
-
“不能将按钮图像缩放到某个点之外”是否意味着缩放太多会使按钮图像看起来很糟糕,或者 ???您可以查看
image.size并根据它设置最大比例(即,不要将按钮缩放到超出图像大小)。 -
我的意思是,改变按钮的框架来增加它的大小是没有效果的。它保持原来的大小。我会看一下image.size。谢谢。