0

私は次のリンクに行きました:

UIButtonをプログラムで強調表示する方法は?

コードの最初の 2 行で、次のことがわかりました。

UIImage* normalImage = [_infoButton imageForState:UIControlStateNormal];<br>
UIImage* highlighted = [_infoButton imageForState:UIControlStateHighlighted];

infoButtonに複数の画像を使用しているようです。多くのボタンを持つアプリケーションがあり、すべてのボタンに異なる画像が含まれているため、アプリケーションのサイズが非常に大きくなります。別の画像を作成するnormalStatehighlightedState、アプリのサイズが 2 倍になります。したがって、ボタン画像のぼかし、ボタンまたは画像のサイズダウン、アルファダウンなどのアイデアが必要です。私はコードを知りません。それが私の質問です。

iPhoneでタップしたボタンをアニメーション化/ハイライトする方法は?

前もって感謝します。

4

2 に答える 2

3

まず、「非常に大きなサイズ」は相対的なものです。ネットワーク経由でのダウンロードを妨げるのは10MBの制限を超えていますか?そうでなければ、多分あなたはそれについて心配するべきではありません。

次に、JPEGなどのより圧縮率の高い形式で画像を保存してみましたか?

第三に、これらの「異なる画像」は、「ある状態では象のように見え、別の状態ではタージ・マハルのように見える」のように、実質的に異なりますか?それとも、異なる「象の状態」が必要なのですか?後者のように聞こえます。

1つの可能性は、ボタンのプロパティの一部を設定して、さまざまな描画動作をアクティブにすることです。次の2つのオプションを見てください。

button.reversesTitleShadowWhenHighlighted
button.adjustsImageWhenHighlighted 

または変化させてみてください

- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state; 

彼らは実際にかなりの数のオプションを提供しています。

于 2009-08-04T19:17:08.280 に答える
1

Ok !私は1つの解決策を得ました。

それは私の要件と非常によく似ています。はい、他の解決策があるかもしれませんが、

どちらが私の要求に近いかを見つけます。

ビューでUIButtonを選択し、ボタン属性を設定します

-> チェック マークをオン -> タッチ オン ハイライトを表示します。

于 2009-08-04T19:13:14.123 に答える