イメージとしていくつかのグラフィックス リソースが必要な静的ライブラリがあります。私のクラスでは、次の方法で画像を追加します。
[UIImage imageNamed:@"myImage.png"]
でもうまくいかない…どうすればいいの?
イメージとしていくつかのグラフィックス リソースが必要な静的ライブラリがあります。私のクラスでは、次の方法で画像を追加します。
[UIImage imageNamed:@"myImage.png"]
でもうまくいかない…どうすればいいの?
そのバンドルを取得したら、次のようにそこにあるリソースにアクセスできます。
NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"YourBundle" ofType:@"bundle"];
NSString *imagePath = [[NSBundle bundleWithPath:bundlePath] pathForResource:@"yourImage" ofType:@"png"];
UIImage *image= [[UIImage alloc] initWithContentsOfFile:imagePath];
私は解決策を見つけました..
バンドルディレクトリ(コンパイル済み)を調べたところ、私の画像(.png
)にすべてのiestensioneが含まれていることに気付きました.tiff
これを回避するためHIDPI_COMBINE_IMAGES
に、バンドルのbuid設定でキーを次のように設定します。NO
..だから私はe1985によって提案されたように私の写真を回復することができます
Xcodeでは、静的ライブラリをリンクすると、ライブラリのコードが実行可能ファイルに直接含まれます。ファイルはアプリケーションバンドルにコピーされないため、イメージをコピーする方法はありません。
静的ライブラリを含むイメージファイルがある場合は、Xcodeでターゲットにファイルのコピービルドフェーズを追加することで、アプリケーションバンドルにイメージファイルをコピーできます。
静的ライブラリを使用してコード以外のものを提供することはできません。これは、.a
ファイルがオブジェクト ファイルの単純なアーカイブであり、Mac/iOS で複数の CPU アーキテクチャをサポートする機能が追加されているためです。
唯一の選択肢は、コードやその他のリソースを提供できるフレームワークを作成することです。