0

アプリで奇妙な動作が発生しました。画像はサーバーから読み込まれますUIView:

[self.imageFrame addSubview:self.myImage];

myImage は、クラスから拡張されたクラスのインスタンスですUIImageView。1 回目は画像が正常に読み込まれますが、2 回目は背景が黒、3 回目は問題なく、4 回目は背景が黒、というように続きます。

デバッガーで画像の説明を印刷しようとしましたが、初めて画像が正しく読み込まれたときに、次の説明が表示されました。

(EGOImageView *) $7 = 0x0c940e80 <CustomImageView: 0xc940e80; baseClass = UIImageView; frame = (8 5; 72 72); clipsToBounds = YES; opaque = NO; layer = <CALayer: 0xc940f80>>

2回目、黒い画像の背景を取得したとき、取得した説明は次のとおりです。

(EGOImageView *) $8 = 0x0c9bfec0 <EGOImageView: 0xc9bfec0; baseClass = UIImageView; frame = (8 5; 72 72); clipsToBounds = YES; opaque = NO; layer = <CALayer: 0x1043dea0>>

説明はご覧の通りです。しかし、何が問題を引き起こす可能性があるのか​​ わかりません。なにか提案を?事前にサンクス。

4

1 に答える 1

0

出力例では、コメントは、両方のログメッセージがEGOImageViewである必要があることを示しています(これを明確にするためだけです)。したがって、両方のログメッセージは基本的に同じです。

根本的な問題は、黒いビューを取得したときに、コードがUIImageViewサブクラスのimageプロパティを設定していないことです。

私の提案は、いくつかのことを行うことです。

  • UIImageViewサブクラスの背景色を定義された色(つまり、赤、緑、青など)に設定します。画像の「カテゴリ」や画像の設定方法が異なる場合は、それぞれに異なる色を使用してください。これにより、空白のimageViewを取得したときに、より多くの手がかりが得られる可能性があります。

  • 画像プロパティをログメッセージに記録します。

編集:

  • 画像を読み込むときは、画像ビューのフレームが適切なサイズ(および少なくともある程度のサイズ)であることを確認してください[いくつかの問題を解決しましたが、適切なフレームを設定しています)。
于 2012-08-27T11:52:08.660 に答える