このアプリを iOS 6 用にコンパイルしました。これは iOS 4.3 からアップグレードされたコードであり、そこでは正常に動作していました。
セグメント化されたコントロールを作成すると、そのアイコンはアルファ チャネルだけになり、コントロールは透明になります。
これが私がそれを作成する方法です
// images is a NSArray of images. I have confirmed.
// All images are OK and are loading fine on this array.
// Images have alpha channel. They are basically solid
// rounded icons with shadows surrounded by transparent pixels
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:images];
[segmentedControl addTarget:self action:selector(change:)
forControlEvents:UIControlEventValueChanged];
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
これが私がコントロールを見る方法です。アルファ チャネルのアイコン シャドウに対応する、ぼやけた青い右の境界線に注目してください。また、もう1つの問題は、これが青色であることです。このコントロールの青色を調整したことはありません。これは、iOS 4.3 で問題なく動作していました。
手がかりはありますか?
編集: 画像をテキストに置き換えるとすぐに、セグメント化されたコントロールが正しくレンダリングされます: 不透明で青はありません。これでWTFレベルが上がりました。
いくつかのWTFファクターで青を示す3つの赤い画像を含むサンプルプロジェクトを作成しました。ここからプロジェクトをダウンロードしてください: http://www.fileswap.com/dl/RVf7UuwKhf/