如何加载从我的WebView资源的图片? [英] how to load a picture from my resource in webview?

查看:274
本文介绍了如何加载从我的WebView资源的图片?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要加载的图片名为map.png在我的WebView中绘制资源设置。

我在另一个答案发现了这个建议webview.loadUrl(文件:// ......),但我不明白如何正确设置它。我总是得到请求的文件没有找到错误。这是我写的

 `公共类地图扩展活动{
    / **当第一次创建活动调用。 * /
    @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.map);
  的WebView mWebView =(的WebView)findViewById(R.id.webMap);
        mWebView.getSettings()setJavaScriptEnabled(真)。
        mWebView.loadUrl(文件:// RES /绘制/图);`

这是XML

 <的WebView的xmlns:机器人=htt​​p://schemas.android.com/apk/res/android
机器人:ID =@ + ID / webMap
    机器人:layout_width =FILL_PARENT
    机器人:layout_height =FILL_PARENT机器人:方向=垂直>< /的WebView>

 的setContentView(R.layout.map);
  的WebView mWebView =(的WebView)findViewById(R.id.webMap);
        mWebView.getSettings()setJavaScriptEnabled(真)。
        mWebView.loadUrl(文件:/// android_assets /图));

这是一个完整的屏幕截图

这是新的code,但我得到一个错误

  @覆盖
    公共无效的onCreate(捆绑savedInstanceState){
        super.onCreate(savedInstanceState);
        的setContentView(R.layout.map);
        的WebView myWebView =(的WebView)findViewById(R.id.webMap);
        myWebView.getSettings()setJavaScriptEnabled(真)。
        。myWebView.getSettings()setBuiltInZoomControls(真);
        myWebView.setWebViewClient(新MyWebViewClient());
        myWebView.loadUrl(文件://mnt/sdcard/map.png);


解决方案

您不能访问从应用程序的目录绘制像可绘制

  mWebView.loadUrl(文件:// RES /绘制/图);

从您的应用程序包的您的资产目录,你应该使用文件

  mWebView.loadUrl(内容://+ Context.getResources()getAsset()+文件名);

编辑:好把你的图像中的应用程序资产目录,然后例如写行,

  myWebView.loadUrl(文件:///android_asset/testimage.jpg);

或使用

  webView.getSettings()setJavaScriptEnabled(真)。
    。webView.getSettings()setBuiltInZoomControls(真);
    webView.loadUrl(文件://mnt/sdcard/map.png);

尝试

I want to load a picture called map.png set in my drawable resource in the WebView.

I found in another answer this suggestion webview.loadUrl("file://...") but I don't understand how to set it properly. I always get error that the requested file was not found. This is what I wrote

`public class Map extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.map);
  WebView mWebView =(WebView)findViewById(R.id.webMap);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.loadUrl("file://res/drawable/map");`

This is the XML

    <WebView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webMap"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" android:orientation="vertical">

</WebView>

     setContentView(R.layout.map);
  WebView mWebView =(WebView)findViewById(R.id.webMap);
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.loadUrl("file:///android_assets/map)");

This is a complete screen shot

This is the new code but I get an error

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.map);
        WebView myWebView = (WebView) findViewById(R.id.webMap);
        myWebView.getSettings().setJavaScriptEnabled(true);
        myWebView.getSettings().setBuiltInZoomControls(true);
        myWebView.setWebViewClient(new MyWebViewClient());
        myWebView.loadUrl("file://mnt/sdcard/map.png");

解决方案

you can not access Drawable from application's drawable directory like

   mWebView.loadUrl("file://res/drawable/map");

for file from your asset directory of your app package you should use

   mWebView.loadUrl("content://"+Context.getResources().getAsset()+"filename");

EDIT: ok put your image in Applications asset directory, then for example write line,

  myWebView.loadUrl("file:///android_asset/testimage.jpg"); 

or use

    webView.getSettings().setJavaScriptEnabled(true);
    webView.getSettings().setBuiltInZoomControls(true);
    webView.loadUrl("file://mnt/sdcard/map.png");

try it

这篇关于如何加载从我的WebView资源的图片?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆