問題タブ [phasset]
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 - Swift で PHAsset の場所を取得する
何らかの理由location
で、 a のプロパティPHAsset
は Objective-c でのみ公開され、Swift では公開されません。
これを回避するために、場所を抽出して Swift にインポートすることのみを目的とする Objective-C クラスを作成できると考えました。
LocationGetter.h
LocationGetter.m
これまでのところは問題ありませんが、Swift で使用しようとすると、次のようになります。
「LocationGetter.Type」には「locationForAsset」という名前のメンバーがありません
location
おまけの質問: 一体なぜ、Appleは迅速に公開しなかったのですか?
ios - PHFetchResult の PHAsset が削除された写真を表しているかどうかを判断するにはどうすればよいですか?
iOS 8 の新しい写真フレームワークを使用して、デバイスで最後に撮影した写真のサムネイルを取得しようとしています。これを行うために現在持っているコードは次のとおりです。
このコードは、デバイスで最後に撮影された写真を取得できますが、デバイスで最後に撮影された写真が削除された場合、その事実は考慮されず、ボタンの画像は で削除された写真に設定されresultHandler
ます。これは、iOS 8 では、写真を削除すると、実際にデバイスから削除されるまでに 30 日かかり、何らかの理由でこれらの写真がPHFetchResult
s に含まれていることが原因であると思われます。
PHAsset
に含まれるオブジェクトで「削除済み」または類似の属性を探してみましたがassetsInfo
、どのような情報も見つかりませんでした。デバッガーで削除された写真のプリントアウトは次のようになります。
の次のオブジェクトのプリントアウト (assetsInfo
私が確認した写真は削除されていません) は次のようになります。
写真が削除されたかどうかを教えてくれる情報はないようです。おそらく属性が役立つと思いましhidden
たが、代わりに、写真が特定の Photos.app アルバム/コレクションに表示されるかどうかに関係しています。属性が役立つのではないかと思いましたassetSource
が、文書化されていないようで、さらに調査したところ、写真の削除ステータスとは関係がないようです。
PHAsset
オブジェクトが削除された写真を表しているかどうかを確認する方法はありますか? 「最近削除した」アルバムに含まれる写真を除外するために、取得しているアセットを絞り込む方法はありますか?
ios8 - iOS8 の新しい Photos Framework を使用してビデオを再レンダリングする
写真からビデオを取得して再レンダリングできるようにする必要があります。時間内にクリップし、幅と高さ、およびフレーム レートを変更します。確かに私はから始める必要があります:
また、幅、高さ、および期間を調整できる必要があります。そこから NSData を取得し、それをファイル syset.m に書き出します。
しかし、URL は nil です。これは、新しい Photos フレームワークでビデオを編集できないことを意味します。(ALAsset では、AVAssetExportSession を使用してこれに問題はありませんでした。) Apple Dev サンプル コードもビデオを編集できないため、これは理にかなっています。
さて、生活を楽にするために、その URL を AVAssetExportSession に渡すことができましたが、それは nil であるためできません。幅、高さ、および期間を変更した場合でも、そこから NSData を取得し、それをファイル システムに書き込む必要があります。
変更したビデオを写真に書き戻す必要はありません。サーバーにアップロードするので、実際にはファイル システムにビデオが必要です。
ios - PHAsset: 「assetSource」とは何ですか?
PHFetchResult を列挙しています。返される PHAssets で println を実行すると、次のようになります。
assetSource=3
ビットが何か知っている人はいますか?可能であればassetSourceで述語を実行したいのですが、それが何であるか、またはそれにアクセスする方法に関する情報がどこにも見つかりません。プライベートですか?
ios - requestImageDataForAsset 結果ハンドラーの形式が不適切です
PHAsset から完全なイメージをリクエストしようとしています。
私のコードは次のとおりです
私はこのエラーが発生しています:
この呼び出しに関するドキュメントを読みました ( https://developer.apple.com/library/IOs/documentation/Photos/Reference/PHImageManager_Class/index.html#//apple_ref/occ/instm/PHImageManager/requestImageDataForAsset:options:resultHandler :)
そして、必要な末尾の構文クロージャーに従い、適切なパラメーターを入力したと思います。
これについては、WWDC 2014 のビデオも見ました。
これを完全なイメージで機能させることはできないようです。
小さいサイズの画像が必要な場合は、次のコードを使用しました。
そして、これは機能します。
したがって、最初の呼び出しで何が間違っているのかわかりませんが、PHAsset からフルサイズの画像を要求する方法や、最初のコード ブロックの構文の何が問題なのかについての洞察が欲しいです。
ありがとう
更新:エラーメッセージは次のとおりです
「'(PHAsset、options:NilLiteralConvertible、(($T6、($T6、$T7、$T8、($T6、$T7、$T8)... ."
ios - 「requestImageForAsset」から返された UIImage のサイズが「targetSize」の設定に近くない
最新の iOS8 フォト フレームの作業を徹底的に読み、ユーザー ライブラリからいくつかのアセットを取得して表示しようとしています。ユーザーに一度に 4 つの画像を編集させます。しかし、このため、画像を圧縮する必要があります。そうしないと、アプリがクラッシュします。
次のコードを使用して、PHImageManager を使用して画像をロードしています。
ご覧のとおり、画像が少なくとも画面より大きくならないように、目標サイズを計算しています。そうであれば、画像の比率を縮小します。ただし、これは典型的な印刷ログです
ターゲット サイズは (768.0,798.453531598513) 結果サイズは (1614.0,1678.0)
ターゲットサイズを768x798に設定していますが(その特定のケースでは)、結果として得られるUIImageはその2倍以上です。ドキュメントによると、 targetSize パラメータ
「返されるイメージのターゲット サイズ。」
最も明確な説明ではありませんが、私の実験ではこれと一致しません。
何か提案があれば、ぜひ聞きたいです!