Java Android:如何从res/drawable中检索图像并将其放入WebView.loadUrl()中
我已经尝试了以下方法,但没有成功。 我的项目使用API级别4 这是我的密码:Java Android:如何从res/drawable中检索图像并将其放入WebView.loadUrl()中,java,android,Java,Android,我已经尝试了以下方法,但没有成功。 我的项目使用API级别4 这是我的密码: webView.loadUrl("android.resource://com.package.name.from.manifest/" + R.drawable.pic); 我在WebView小部件中发现以下错误: 网页不可用 该网页位于 安卓resource://com.package.name.from.manifest/2130837504 可能是 暂时关闭,或者可能已永久移动到新站点 地址 我错过什么
webView.loadUrl("android.resource://com.package.name.from.manifest/" + R.drawable.pic);
我在WebView小部件中发现以下错误:
网页不可用
该网页位于
安卓resource://com.package.name.from.manifest/2130837504 可能是
暂时关闭,或者可能已永久移动到新站点
地址
我错过什么了吗?我是否应该创建一个html页面,其中包含一个指向资源的链接,如标记?我希望这是有帮助的。。
用于从res/drawable获取图像
Resources res = getResources();
Drawable drawable = res.getDrawable(R.drawable.myimage);
我希望这对你有帮助。。
用于从res/drawable获取图像
Resources res = getResources();
Drawable drawable = res.getDrawable(R.drawable.myimage);
我认为您应该将您的绘图表放在资产/文件夹中,然后通过
URI的形式引用它们file:///android_asset/drawable_name.png
,例如。我认为您应该在资产/文件夹中放置绘图表,然后通过URI以的形式引用它们file:///android_asset/drawable_name.png
,例如。最后,我做了以下工作:
我在参考资料中有每个图像的文件扩展名数组。
然后我可以用资源ID和文件扩展名调用下面的方法
protected String getResourceURL(int resourceId, String extension) {
String resName = getResources().getResourceName(resourceId);
int index = resName.indexOf("/");
resName = resName.substring(0, index);
index = resName.indexOf(":");
String resType = resName.substring(index + 1);
StringBuilder link = new StringBuilder(128);
link.append("file:///android_res/");
link.append(resType).append("/");
link.append(getResources().getResourceEntryName(resourceId));
link.append(".").append(extension);
return link.toString();
}
最后,我做了以下工作: 我在参考资料中有每个图像的文件扩展名数组。 然后我可以用资源ID和文件扩展名调用下面的方法
protected String getResourceURL(int resourceId, String extension) {
String resName = getResources().getResourceName(resourceId);
int index = resName.indexOf("/");
resName = resName.substring(0, index);
index = resName.indexOf(":");
String resType = resName.substring(index + 1);
StringBuilder link = new StringBuilder(128);
link.append("file:///android_res/");
link.append(resType).append("/");
link.append(getResources().getResourceEntryName(resourceId));
link.append(".").append(extension);
return link.toString();
}
你可以得到这样的图像路径 file:///android_res/drawable/YOUR_FILE_NAME
将此路径传递给html中的标记。它将起作用。您可以获得如下图像路径 file:///android_res/drawable/YOUR_FILE_NAME
将此路径传递给html中的标记。它将起作用。我想您不明白我的问题。loadUrl(字符串url)。我怎样才能收到Drawable的链接?我想你不明白我的问题。loadUrl(字符串url)。如何从Drawable接收链接?这可能会起作用,但我不想检索文件,因为文件可以是不同的扩展名,但名称相同。例如:在一些情况下,文件可以是01.png,在另一个情况下可以是01.jpg,这意味着我需要一个链接,该链接将直接通过资源id而不是文件名检索资源。这可能会起作用,但我不想检索文件,因为文件可以是不同的扩展名,但名称相同。例如:在一些时候,文件可以是01.png,在另一些时候可以是01.jpg,这意味着我需要一个链接,它将直接通过资源id而不是文件名检索资源