我有一个包含这个的html字符串:
<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<meta name="spanish press" content="spain, spanish newspaper, news,economy,politics,sports">
<title></title>
</head>
<body id="body">
<!-- The following code will render a clickable image ad in the page -->
<script src="http://www.myscript.com/a"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我需要在android中将该网站显示为webview.
我试着用这一切:
webView.loadDataWithBaseURL(null, txt, "text/html", "UTF-8", null);
webView.loadDataWithBaseURL("x-data://base", txt, "text/html", "UTF-8", null);
webView.loadDataWithBaseURL("notreal/", txt, "text/htm", "utf-8",null);
Run Code Online (Sandbox Code Playgroud)
我也尝试删除DOCTYPE标签:
txt=txt.replace("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">", "");
没有人有工作.我刚刚实现了将字符串显示到webview(html代码),但不是必须使用该html代码创建的网站.
怎么了?
我有一个显示漫画书的Android应用程序.为了利用内置的缩放控件,我正在加载图片,WebView如下所示:
webView.loadUrl("file:///android_asset/page1.jpg");
Run Code Online (Sandbox Code Playgroud)
然而,这工作正常,因为图像在资源文件夹中,它们没有被压缩,这使得我的.apk非常大.我想知道如何引用资源文件(从res/drawable文件夹)与我上面的资产一样的文件路径.有谁知道那条路会是什么样的?我尝试过"file:///res/drawable/pagetitle.jpg"没有成功的事情.谢谢您的帮助.
更新:
我发现那"file:///android_res/drawable/page1.jpg"是我正在寻找的道路.
在我的应用程序中,我已经在android webview中加载了MVC页面.MVC页面有两个用于用户名和密码的文本编辑器.在关注文本框时,我收到警告:m_mainFrame->editor()->hasComposition not.
为什么我收到这个警告?
注意:我将android从2.1升级到2.3.6后出现此错误
日志:
08-21 12:10:21.269: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:21.669: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:21.699: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:21.709: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.169: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.199: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.209: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.239: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.259: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.739: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.769: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.939: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:22.959: D/CONTEXT(2928): m_mainFrame->editor()->hasComposition not
08-21 12:10:23.429: …Run Code Online (Sandbox Code Playgroud) 在发布这个问题之前,我已经搜索了很多,但在这个问题上找不到任何明确的答案.
我必须覆盖android webview的默认文本选择并显示我的自定义文本选择对话框选项.我试过这个示例代码项目.
此示例项目适用于以下设备和模拟器:
不适用于以下设备:
在Android操作系统版本4.1和4.1+而不是显示我的自定义文本选择选项对话框,它显示Android系统的文本选择的默认操作栏.
我对此进行了大量搜索,很多人建议使用onLongClick()方法接口
我已经在这个论坛上问了一个问题请看这个链接,这个问题的答案我能够克隆onLongClick()事件,但我无法停止默认文本选择操作栏.
对于这种情况,我几乎没有问题.
1.为什么onLongClick()方法停止在android os 4.1+上运行的设备上工作?
2.如果长按webview中的文本,如何停止默认文本选择操作栏?
这是我的自定义webview类.
package com.epubreader.ebook;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.content.Context;
import android.graphics.Rect;
import android.graphics.Region;
import android.os.Handler;
import android.os.Message;
import android.util.AttributeSet;
import android.util.DisplayMetrics;
import …Run Code Online (Sandbox Code Playgroud) 我正在尝试在Android 4.4中使用新的evaluateJavascript方法,但我得到的所有内容都是null结果:
webView1.evaluateJavascript("return \"test\";", new ValueCallback<String>() {
@Override
public void onReceiveValue(String s) {
Log.d("LogName", s); // Log is written, but s is always null
}
});
Run Code Online (Sandbox Code Playgroud)
如何将结果返回此方法?
更新:更多信息:
setJavascriptEnabled(true);return 'test';,return { test: 'this' }console.log('test'); 正在执行罚款.targetSdkVersion为19:如果您的应用使用WebView设备: Nexus 7和Nexus 5(股票)
我有:我正在从URL加载图像.我只是这样做(WebView).loadUrl(imageurl, extraheaders)
我得到的:图像没有在WebView的全宽处显示,它周围有空白区域(就像你在桌面浏览器中打开一点点)
我尝试了什么:将LayoutAlgorithm设置为SINGLE_COLUMN.工作完美,但缩放不起作用.(我已经启用它了不WebView.getSettings()知道为什么.设置setUseWideViewPort(true);加载图像没有任何空白空间,但它完全放大.
我想在WebView中播放YouTube视频,WebView首先显示带有播放按钮的视频,但点击播放按钮后开始进度条,2-3秒后停止进度条和黑色屏幕空白.
Image1:视频首先看播放按钮
Image2:点击播放按钮后屏幕变为空白.
请!帮助我为什么视频没有开始.
IMAGE:1 
IMAGE:2

这是我在webview中播放YouTubeVideo的源代码..请帮帮我...
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView wv = (WebView) findViewById(R.id.webView1);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginsEnabled(true);
final String mimeType = "text/html";
final String encoding = "UTF-8";
String html = getHTML();
wv.loadDataWithBaseURL("", html, mimeType, encoding, "");
}
public String getHTML() {
String html = "<iframe class=\"youtube-player\" style=\"border: 0; width: 100%; height: 95%; padding:0px; margin:0px\" id=\"ytplayer\" type=\"text/html\" src=\"http://www.youtube.com/embed/"
+ "J2fB5XWj6IE"
+ "?fs=0\" frameborder=\"0\">\n"
+ "</iframe>\n";
return html;
}
Run Code Online (Sandbox Code Playgroud) 我在我的应用程序中使用WebView,我需要根据用户所在的页面更改应用程序标题.我怎样才能在Android WebView中执行此操作?
我通过以下方式在iphone中做到了这一点
self.title = [webPage stringByEvaluatingJavaScriptFromString:@"document.title"]
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Adds Progrss bar Support
this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.webview );
// Makes Progress bar Visible
getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
mWebView = (WebView) findViewById( R.id.webview ); //This is the id you gave
//to the WebView in the main.xml
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setSupportZoom(true); //Zoom Control on web (You don't need this
//if ROM supports Multi-Touch
mWebView.getSettings().setBuiltInZoomControls(true); //Enable Multitouch if supported by ROM
// Load URL
Bundle b = getIntent().getExtras();
String url = b.getString("url"); …Run Code Online (Sandbox Code Playgroud) 我<select>在Android平板电脑上使用HTML 标签在React Native的WebView中遇到了一个非常奇怪的问题.出于某种原因,点击渲染<select>按钮不会打开选项列表.
这只发生在Android平板电脑上,无论Android版本如何.但是,在Android智能手机上,不会发生此错误,并且选项列表会按预期打开.
为了重现这个bug,我创建了一个简单的演示应用程序:https://github.com/huonderv/react-native-webview-html-select-bug.
重要的代码如下:
index.android.js
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
WebView
} from 'react-native';
export default class WebViewProject extends Component {
render() {
return (
<WebView
style={styles.container}
source={{ uri: 'file:///android_asset/simpleselect.html'}}
startInLoadingState={true}
/>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
},
});
AppRegistry.registerComponent('WebViewProject', () => WebViewProject);
Run Code Online (Sandbox Code Playgroud)
simpleselect.html
<!DOCTYPE html>
<html>
<body>
<select>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="opel">Opel</option> …Run Code Online (Sandbox Code Playgroud) javascript android android-webview react-native react-native-android
在我的应用程序中,我有一个WebView从Internet加载任何URL.现在,有时由于网络速度慢,页面需要很长时间才能加载,用户只能看到一个空白屏幕.
我想显示ProgressBar的同时WebView被加载和隐藏ProgessBar当WebView被完全加载.
我知道如何使用ProgressBar和AsyncTasks,但这是我的问题.
这是我用来加载我的代码WebView.
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebViewClient(new HelloWebViewClient());
mWebView.loadUrl(web_URL);
Run Code Online (Sandbox Code Playgroud)
这是我的自定义WebViewClient课程
private class HelloWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,如果我尝试显示ProgressBar使用AsyncTasks然后我想我必须给代码加载doInBackGround()我的函数中的URL AsyncTask并通过该onProgressUpdate()函数显示进度.
但是,如何在doInBackground()中加载URL,因为doInBackground()在非UI线程上运行,我无法在其中使用mWebView.loadUrl(web_URL).
有什么建议?我错过了一些明显的东西吗 请指导我.
android android-webview android-progressbar android-asynctask