4

アプリの読み込みと処理にすでに時間がかかりすぎているため、リストビュー(ファイルピッカー以外)で画像を取得して表示する別の方法を作成しようとしています。いつも1つのポイントが欠けていることがわかりました。imgはソース(src)として絶対パスを取りません。

私が使用したコードは次のとおりです。

var pictureLibrary = Windows.Storage.KnownFolders.picturesLibrary;
pictureLibrary.getFilesAsync(query).then(function (items) {....};

データバインディングは正しく、リストビューはファイルパスを含むすべてのファイルデータを取得しています。その点で問題ありません。Visual Studioはbase.js、画像タグに絶対パスを使用する際にファイル()からの例外を要求していますが、次のようになります。

"0x80004004 - JavaScript runtime error: Operation aborted
If there is a handler for this exception, the program may be safely continued."

では、例外が処理された場合、問題は発生しますか?それとも、HTMLのimgタグ(およびリストビュー)でpictureLibraryの画像を表示する方法がないということですか?

画像を取得する別の方法はありますpictureLibraryか?そしてもう1つ...より良いものは、ファイルピッカーを使用するか、ファイルデータを使用して直接ロードすることです(つまり、ここで試していることです)。

私はjavascriptに関しては少しナイーブなので、説明してください。情報が足りない場合はお知らせください。

4

1 に答える 1

4

だから私の理解では、アイテムは画像ライブラリからの画像を保持しています。次に、次の方法でそれらを表示できます。

for (var i = 0; i < items.length; i++) {
    var image = document.createElement("img");
    image.src = URL.createObjectURL(items[i]);
    container.appendChild(image); // container is where you want to append them
}

次のを使用しました。

于 2012-09-15T13:10:44.400 に答える