2016-06-17 14 views
1

私は主にオフラインでの使用を意図したアプリを開発しています。 ユーザーはウェブから画像をダウンロードできます。問題なく、アップロードした画像を自分のNativescriptアプリ内の文書フォルダ(fs.knownFolders.documents())内に表示できます。Nativescript - ドキュメントディレクトリからイメージを表示するには?

ダウンロードした画像を自分のビュー内に表示しようとしていますが、成功することはありません。

私が理解していること(間違っている可能性があります)から、これは "〜/ myImage.jpg"というイメージsrcを指定するだけとは異なります。

これは私の正確なアプリケーションではありませんが、これは同じ原則に従い、検証するためのコードを与えてくれます。

主page.js:

var observable = require("data/observable"); 
var imageSource = require("image-source"); 
var fs = require("file-system"); 

exports.pageLoaded = function() { 

    var viewModel = new observable.Observable(); 
    http.getFile("https://www.google.ca/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png").then(function (r) { 
     //the getFile downloads to the root documents path, shown below 

     var folder = fs.knownFolders.documents(); 
     var path = fs.path.join(folder.path, "googlelogo_color_272x92dp.png"); 
     var image = imageSource.fromFile(path); 
     //have also tried grabbing the image by id, and setting its src. 

     viewModel.set("image", image); 

    }, function (e) { 
     //// Argument (e) is Error! 
    }); 
    viewModel.set("image", null); 

    page.bindingContext = viewModel; 

} 

主page.xml:参考

<Page xmlns="http://schemas.nativescript.org/tns.xsd" loaded="pageLoaded"> 
    <StackLayout> 
     <Image width="80" src="{{image}}" height="80" stretch="none" /> 
    </StackLayout> 
</Page> 

、Iは(角度ではない)TNSにJavaScriptを使用してい、およびtnsバージョン2.0.1。この時点では、私はiOSだけに心配しています。

ご協力いただきありがとうございます。

答えて

1

このお試しください:ファイルを保存します)getImage

4の応答にimageSourceを設定して)、それはID

3のヴィアImageビューをつかむ)http.getImage

2を使用)

http.getImage("https://www.google.ca/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png").then(function (r) { 
     var imgview = page.getViewById("id_of_image_view"); 
     imgview.imageSource = r; 
     var saved = imgView.imageSource.saveToFile(path,'jpg'); 

    }}; 
+0

I私はここで唯一必要なのは 'imageSource'属性です。それはcookbooksのドキュメントからあまりにも明らかではありませんでした。 –

+0

@GeorgeHuber yahいくつかのことは、ドキュメントからあまり明確ではありません... –

+0

こんにちは。私は同様の試みをしていますが、私はタイプスクリプトを使用しています。コンパイラは、 "imageSourceはビューのプロパティではない"と不平を言う。それを回避する方法は? – xerotolerant

関連する問題