0
_topBar = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 45)];

UIImageView *bar = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"top_bar.png"]];
bar.frame = CGRectMake(0, 0, 320, 45);
[_topBar addSubview:bar];

_up = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"up.png"]];
[_topBar addSubview:_up];

_upがビルドに表示されません。「up.png」をリソースフォルダ内の他の画像と交換すると、表示されますが、up.pngは拒否します。何か私にできることはありますか?静的に割り当てられたUIImageViewであるUIImageだけを使用して初期化し、.pngファイルを削除して再度追加し、リソースフォルダーから取り出して別の場所に配置し、再保存しました。

編集: ファイルはup.pngとして保存されましたが、実際にはup.png.psdでした。細字を読むだけです。

4

2 に答える 2

6

Finderで種類を確認してください。おそらくpngではないため、表示されません。

あなたがコメントしたので、私は今これが真実であることを知っています:)

于 2012-08-20T19:18:42.107 に答える
3

いくつかのこと。右側のペインでファイルを選択し、右端(3番目)のファイルインスペクターペインを開いて、この画像がターゲットに含まれていることを確認します。

コードで、これを分解します。

UIImage *image = [UIImage imageNamed:@"up.png"];
NSLog(@"image %@", image);
_up = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"up.png"]];
NSLog(@"UP FRAME: %@", NSStringFromCGRect(_up.frame) );
// maybe set the frame to what you want?
_up.frame = (CGRect){ {0,0}, image.size }; // set origin where you want it
于 2012-08-20T19:18:37.347 に答える