画像のあるUIImageViewがあります。このinitWithFrame:(CGRect)frame
ように見えます:
#define BORDER_WIDTH_SELECTION 3
#define SELECTED_SCALE_VALUE 1.3
self.layer.masksToBounds = NO;
smallFrame_ = frame;
float newX = self.center.x - ((self.frame.size.width*SELECTED_SCALE_VALUE)*0.5);
float newY = self.center.y - ((self.frame.size.height*SELECTED_SCALE_VALUE)*0.5);
bigFrame_ = CGRectMake(newX, newY, self.frame.size.width*SELECTED_SCALE_VALUE, self.frame.size.height*SELECTED_SCALE_VALUE);
self.layer.borderWidth = BORDER_WIDTH_SELECTION;
その後、これをトリガーします
- (void) setSelected {
[self makeThumbnailBig];
self.layer.borderColor = [UIColor colorWithRed:178.0/255.0 green:19.0/255.0 blue:50.0/255.0 alpha:1.0].CGColor;
}
- (void)makeThumbnailBig
{
[UIView animateWithDuration:0.2 animations:^{
self.frame = bigFrame_;
}];
}
正しくスケーリングされImageView
、赤い境界線が描画されますが、その後、ピークimage
内ImageView
は左側の境界線の下から約1ピクセルまたは2ピクセルだけピークになります。画像を削除しましたが、これで問題がわかります。
何か案は?