私は自分のアプリにUITableViewを持っていて、幅は固定されていて高さが異なる画像を読み込む必要があります。私はNSOperationQueueを使用して画像の非同期をダウンロードし、サイズ変更とトリミングのために私はこのポストでJane Salesが提供するソリューションを使用しようとしましたlink text。UITableViewCellsで表示する前に画像のサイズを変更してトリミングする
私はカスタムUITableViewCellクラスを作成しました。キューイングされた操作がイメージのダウンロードを完了したときに呼び出されるメソッドがあります。メソッドが正しく呼び出され、画像が表示されます。 Janeが提案した方法で画像のサイズを変更しようとすると、問題が発生します。 に到達したとき[sourceImage drawInRect:thumbnailRect];私はexecの不正なアクセスエラーを受け取り、私は理由を理解できません。
- (void) setupImage:(UIImage *) anImage{
UIImage *resized = [anImage imageByScalingAndCroppingForSize:CGSizeMake(64, 59)];
if(resized == nil)
resized = [UIImage newImageFromResource:@"thumb2.png"];
[thumbnailView setImage:resized];
}
setupImage NSOperationQueueがアニメージュのダウンロードアクションを完了したときに呼び出される関数です:私はこのようなメソッドが呼び出します。
誰かが、画像のサイズを変更して画像を切り抜こうとすると、悪いアクセスエラーが発生する理由を私に教えてもらえますか?私はテーブルビューの外で同じ機能を使用してみました。ケースの80%が動作しますが、同じexecの不正なアクセスエラーが発生する場合があります。
は ソリン
私はシミュレータでアプリケーションをテストすると、execの不正なアクセスエラーがスローされないという事実は興味深いです。 iPhone 3Gでテストすると、サイズ変更や切り抜きを試みるときにエラーがスローされます。 –
私はあなたのアプリのサンドボックスに画像を保存することをアドバイスしたいと思います。 – Daniel
私はUITableViewCellでその場でイメージをトリミングするのはかなり高価だと思います。 – runmad