問題タブ [photokit]
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.
ios - Photokit を使用してメタデータ付きの写真を書き込む
現在、ALAsset フレームワークを使用して、画像をフォト ライブラリからドキュメント ディレクトリにメタデータとともに保存しています。私が使用するコードは
このコードを変換して Photo Kit を使用したいと考えています。私の調査から、フォトキットが書き込みを処理する方法を見つけました
ios - スマート アルバムを取得するときに、fetchAssetCollectionsWithType の結果を並べ替えることができますか?
fetchAssetCollectionsWithType を呼び出すと、ほとんどのコレクション タイプで適切に並べ替えられた結果を取得するのに問題はありません。例えば:
すべてのアルバムを正しく並べ替えますが、並べ替え順序を逆にすると、逆の結果が得られます。
PHAssetCollectionTypeSmartAlbum に対して同じことを行うと、次のようになります。
結果は毎回同じ順序ですが、特定の順序で返されるわけではありません。順序を逆にしたり、ソート記述子を「endDate」などの別のものに変更したりしても、結果には影響しません。アイテムが実際に次のようなプロパティを持っていることを確認しました。
これにより、次のようなログが生成されます。 - 0 localizedTitle - すべての写真、推定カウント - 0 localizedTitle - 非表示、推定カウント - 0 localizedTitle - 最近追加された、推定カウント - 0
正しくソートされた人はいますか?
基本的に、結果を配列に取り込んでソートすることになりました。たまたまカメラロールとお気に入りが最初に欲しいだけです。
ios - PhotoKit でメモリ使用量を減らす方法は?
システムアルバムから写真をPhotoKit
取得してUICollectionView
.
の場合、次の
/li>UICollectionViewCell
ように設定します。my を初期化するとき、次から
/li>UICollectionView
写真を取得します:のみ:PHAsset
collection
Camera Roll
次に、次のように上
/li>UIImage
からリクエストします。PHFetchResult
しかし、それを実行してUICollectionView
十分に速くスクロールすると、メモリ使用量が次のように急激になることがわかりました。
メモリが足りないときにクラッシュする場合に備えて、どうすればそれを減らすことができますか?
ios - Cannot convert UIImage to NSData when fetched with PhotoKit
My scenario is that I select one of the photos fetched from system album with PhotoKit and presented in my UICollectionView
and pass the selected photo (UIImage
) to my next UIView
and send it to remote server in form of NSData
.
But when I put breakpoint before sending to track the NSData
I found that the UIImage
had data with allocated memory while NSData
did not.
Here is the code to fetch the UIImage
(Please notice that I didn't specify any PHImageRequestOptions
object):
I convert the UIImage
to NSData
like this:
When I tracked the variables, the UIImage
contains data as below:
But the NSData
is nil
as below:
And what was ODD is that if I specified an PHImageRequestOptions
object for the PHImageManager
to request images, the NSData
wouldn't be nil
. I'm not sure what was changed with or without the PHImageRequestOptions
and why it would make such difference.
UPDATE:
What I found is that if you specify PHImageRequestOptions
to nil
then the default options will force it to fetch photos asynchronously which, in my opinion, can be unstable for NSData
, so when I specify options.synchronous = YES;
it would work.
But in this case, would it cause any retain cycle or some PhotoKit
objects won't get released?
ios - PHCachingImageManager から固定サイズの画像を取得する
私は自分のサムネールを自分PHCachingImageManager
のビルトインに入れることができるように、imageView
自分UITableViewCell
のサムネールを取得しようとしています。
ログから、AssetGridThumbnailSize = 80 x 80 (40 x 40 retina) であることがわかります。
サムネイルサイズ: {80, 80}
contentMode をに設定しましたPHImageContentModeAspectFill
が、画像を取得すると、サイズがすべて異なり、UITableView
見た目が非常に混沌としています。
PHCachingImageManager
適切なサイズの画像を返してもらうにはどうすればよいですか?