質問
次のリンクにアクセスしました:
コードの最初の2行で見つけたもの:
UIImage* normalImage = [_infoButton imageForState:UIControlStateNormal];<br>
UIImage* highlighted = [_infoButton imageForState:UIControlStateHighlighted];
infoButtonに複数の画像を使用しているようです。多くのボタンを持つアプリケーションがあり、すべてのボタンに異なる画像があり、アプリケーションのサイズが非常に大きくなります。 normalState
と highlightedState
で異なる画像を作成すると、アプリのサイズが2倍になります。そのため、ボタン画像にはぼかし、ボタンや画像のサイズダウン、アルファダウンなどのアイデアが必要です。コードがわからないのは私の質問です。
iPhoneでタップしたボタンをアニメーション化/強調表示する方法
事前に感謝します。
解決
まず、「サイズが非常に大きい」相対的なものです。ネットワーク経由のダウンロードを妨げる10 MBの制限を超えていますか?そうでない場合、心配する必要はないでしょう。
次に、JPEGなどの圧縮率の高い形式で画像を保存しようとしましたか?
第三に、これらは「異なる画像」ですか? 「ある州では象のように見え、別の州ではタージ・マハルのように見える」など、実質的に異なる?それとも、異なる「象の状態」が必要なのでしょうか?後者のように聞こえます。
1つの可能性は、ボタンのプロパティの一部を設定して、さまざまな描画動作を有効にすることです。次の2つのオプションを見てください:
button.reversesTitleShadowWhenHighlighted
button.adjustsImageWhenHighlighted
または変更してみてください
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state;
実際には、かなりの数のオプションが用意されています。
他のヒント
OK!解決策が1つありました。
これは私の要件に非常によく似ています。 はい、他の解決策があるかもしれません、
リクエストに近い方を見つけました。
ビューでUIButtonを選択します &amp;ボタン属性の設定
-&gt;オンのチェックマーク-&gt;ハイライトにタッチを表示します。