私は と を持ってUIButton
いtitleLabel
ますbackgroundImage
。強調表示された状態のボタンのサイズを変更したい。このサイズ変更はtitleLabel
とに影響するはずbackgroundImage
ですが、ボタンのヒット領域を変更したくありません。
現在、私はこのようにしようとしています。ほとんど機能しますが、ヒット領域にも影響します。
- (void)setHighlighted:(BOOL)highlighted
{
if ( highlighted && !self.highlighted )
{
self.transform = CGAffineTransformMakeScale(scaleFactorOnTouch, scaleFactorOnTouch);
}
else if ( !highlighted && self.highlighted )
{
self.transform = CGAffineTransformMakeScale(1.0, 1.0);
}
[super setHighlighted:highlighted];
}
これにより、ボタンの内側に触れて (100 ピクセル拡張された) ヒット エリアの外側にドラッグすると、拡張されたヒット エリアのエッジの周りをドラッグすると、この揺れ/震えが発生します。ウィグルは、hitArea がハイライトされた状態とハイライトされていない状態の間で絶えず変化しているためです。
self.layer.transform プロパティも変更してみましたが、これもヒット範囲が変わってしまいます。
可能であれば、強調表示された状態に別の backgroundImage を設定することは避けたいと思います。