問題タブ [uiimage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - UIImageViewに新しい画像をロードすると、以前の画像のメモリは解放されません
私のアプリには3つのビューがありますUIImageViews
。リソースファイルとして約150の画像があり、それぞれの.jpgは約24kです。アプリはすべての画像を表示しますが、一度に3つだけ表示されます。
しかし、ボタンをクリックしてさらに3つの画像をにロードするたびにUIImageViews
、Instrumentsの[Overall Bytes]列が約700K増加し、最終的にメモリ不足の警告が表示されてアプリがクラッシュします。どういうわけか、3つの画像のロードごとに使用するメモリが解放されていません。
私はグーグルでこれを行うために知っているあらゆる方法を試しましたが、成功せず、助けが必要です。
私はこれを試しました:(このコードは、さらに3つの画像をロードするアクションの一部です。3つのImageViewは、、、ですimgShownLeft
。imgShownMiddle
これらimgShownRight
はインスタンス変数です。最初にcurrentImage
3つすべてを入力しUIImageViews
、次にpreviousImage
左側の画像を入力する必要があります。nextImage
正しいもの:
それから私はこれを試しました:代わりに:
私が使用した:
同じ方法で
割り当てられimg
、その後にUIImageViews
[img release];
それから私は試しました:
それから私は試しました:
ただし、いずれの場合も、このアクションを実行するたびにメモリ要件が増加しました。
150枚の画像をメモリに保持しなくても、一度に3枚の画像をロードしておくことができることを私は知っています!私は何が間違っているのですか?
洞察をありがとう。/SD
ios - 現在のグラフィックス コンテキストから UIImage を作成する方法は?
現在のグラフィック コンテキストから UIImage オブジェクトを作成したいと思います。より具体的には、私のユースケースは、ユーザーが線を引くことができるビューです。それらは段階的に描画される場合があります。それらが完了したら、描画を表す UIImage を作成したいと思います。
これが drawRect: が私にとって今のように見えるものです:
... ここで、_pathArray は CFArrayRef 型であり、touchesEnded: が呼び出されるたびに入力されます。また、drawRect: は、ユーザーが描画するときに複数回呼び出される可能性があることに注意してください。
ユーザーが完了したら、グラフィック コンテキストを表す UIImage オブジェクトを作成したいと思います。これを行う方法に関する提案はありますか?
ios - iOSでプログラムで画像に色を付けるにはどうすればよいですか?
カラーリファレンスで画像に色を付けたいのですが。結果は、Photoshopの乗算ブレンドモードのようになります。このモードでは、白が色合いに置き換えられます。
色の値を継続的に変更していきます。
フォローアップ:これを行うためのコードをImageViewのdrawRect:メソッドに入れますよね?
いつものように、コードスニペットは、リンクではなく、私の理解に大いに役立ちます。
更新:Raminが提案したコードでUIImageViewをサブクラス化します。
私はこれを私のviewcontrollerのviewDidLoad:に入れました:
画像は見えますが、色が付いていません。また、他の画像を読み込んで、IBで画像を設定し、View ControllerでsetNeedsDisplay:を呼び出してみました。
更新:drawRect:が呼び出されていません。
最終更新: Raminのコードをテストできるように、imageViewが適切に設定されている古いプロジェクトを見つけました。これは、魅力のように機能します。
最終、最終更新:
Core Graphicsについて学んだばかりの方のために、これがおそらく機能する可能性のある最も単純なことです。
サブクラス化されたUIViewの場合:
android - iPhone 用の 9 パッチ ローダーはありますか?
Android には、9 パッチと呼ばれるストレッチ可能なイメージを定義する優れた方法があります。概念の説明については、これらのドキュメントを参照してください。アイデアは、png 画像を 1 ピクセルの境界線で囲み、画像の伸縮可能な領域とパディングの寸法を定義できるようにすることです。これは非常に素晴らしいので、このアイデアを iPhone アプリで使用したいと思います。UIImage ローダーに独自の 9 パッチを作成する前に、既に存在するかどうかを確認したいと思いました。Google は結果を返さないのであまり期待できませんが、質問しても問題ありませんよね? :-)
編集:皆さん、答えには感謝していますが、については知っていstretchableImageWithLeftCapWidth...
ます。@"foo.9.png"
パスを取り、伸縮可能を返すコードを探していますUIImage
。このコードは間違いなくstretchableImageWithLeftCapWidth...
内部で使用されます。私はその方法を使用して自分でコードを書くことができると確信しています。しかし、他の誰かがすでにそれを行っているかどうかを尋ねています。
iphone - 回転した UIImageView の迅速で汚いアンチエイリアシング手法はありますか?
私は CGAffineTransform で回転させている UIImageView (フルフレームと長方形) を持っています。UIImageView の UIImage はフレーム全体を埋めます。イメージを回転して描画すると、エッジが著しくギザギザになります。見栄えを良くするためにできることはありますか?背景でアンチエイリアス処理されていないことは明らかです。
iphone - iPhoneのUIImageからサンドボックスに画像を保存
UITableView で非常に大きなサイズの画像を表示しています。このため、しばらくするとアプリがクラッシュします。次に、画像のサイズを変更してディスクに保存します。NSData/UIImage から画像のサイズを変更し、ディスクに保存するのを手伝ってくれる人がいますか。
UIImage から画像のサイズを変更するコードを取得したので、その結果、UIImage オブジェクトで画像のサイズを変更し、iPhone サンドボックスに保存する方法を説明しました。
ありがとう、
iphone - SQLite+コアデータと 写真を表示するiPhoneアプリのファイルシステム。よりパフォーマンスの高いものは何ですか?
ユーザーが一連の写真をナビゲートするアプリケーションがあります。このシナリオのパフォーマンスの点で最高のものは、写真をNSDataオブジェクトとして永続化するため、または写真をpngファイルとしてファイルシステムに直接保持するためのSQLite + Core DATAですか?
ありがとう。
iphone - 画像の結合
選択した画像を別の画像の上に配置して、選択した画像が Photoshop で作成したある種のフレームに配置されるようにします。画像を結合した後、ディスクに保存したいと思います。
誰かがそれを行う方法を知っていますか、または例へのリンクを持っていますか?
iphone - iPhoneSDKでカラー画像を取得する方法
次のようなものが欲しい
ある色に関して画像を作成します。
iPhoneSDKでそれを行う方法。
iphone - UIImagePNGRepresentationが遅いですか、それとも何か問題がありますか?
カメラを使用して写真を撮るiPhoneアプリで作業しており、それらをアプリケーションドキュメントディレクトリに保存しています。次のコードを使用して、UIImageをNSDataに変換しています。
次に、NSDataを使用して書き込みます
それはすべて機能します。問題は、UIImagePNGRepresentation()が本当に遅いことです。画像をNSDataに変換するには、3Gで8〜9秒かかります。これは私には間違っているようです。誰かがこれを経験したことがありますか?これは単に遅い機能ですか、それとも私はひどく間違ったことをしていますか?
ありがとう