Tag: webview

Android Webview应用程序不会让video播放器全屏显示

您好,我为我的video网站创build了一个webview应用程序。 该网站的devise是一个混合加载移动用户。 只有与移动设备兼容的video才能加载到混合动力车上。 玩家来自VK,dailymotion,youtube,quicktime。 video只能播放sdk 11和更高,但是当我点击播放button去全屏,它只停止播放video,而不会启动到全屏模式。 我尽可能地包含尽可能多的代码,希望有人能帮助我。 我已经把这个search引擎无事化了。 任何帮助将不胜感激。 (Webviewactivity.java) public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); getWindow().requestFeature(Window.FEATURE_PROGRESS); setContentView(R.layout.main); parentView = (RelativeLayout) findViewById(R.id.parent_rl); webviewProgress = (ProgressBar) findViewById(R.id.webview_progress); webview = (WebView) findViewById(R.id.webview); webview.getSettings().setJavaScriptEnabled(true); webview.getSettings().setBuiltInZoomControls(true); webview.getSettings().setAllowFileAccess(true); webview.setWebViewClient(new MyWebViewClient()); webview.getSettings().setPluginState(WebSettings.PluginState.ON); webview.loadUrl(URL); webviewProgress.setProgress(0); webview.setWebChromeClient(new MyWebChromeClient()); webview.setDownloadListener(new DownloadListener() { public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimetype, long contentLength) […]

webview应该拦截请求的例子

我需要知道shouldinterceptrequest是如何工作的。 我不知道如何创build和处理这个方法来读取和replaceCSS链接。 谢谢!

如何处理Android 4.2之前版本的RTL语言?

背景 TextView总是有RTL(从右到左)语言的问题。 由于我只知道如何阅读希伯来文(除了英文),所以我会谈论它的问题: 文本alignment(我不是在说重力)。 作为一种RTL语言,希伯来语是从右向左(与英文相反)。 为了展示它是多么令人讨厌,想象一下,不要展示“Hello world”。 你通常会得到“你好世界”。 如果只有一个句子,可以很容易地解决这个问题,但是如果有多个标点符号,这个问题就会变得更加困难。 元音位置。 希伯来语不需要元音以阅读文本,但是有时在没有元音的情况下阅读是非常困难的(尤其是圣经)。 对于元音来说,希伯来文有所谓的“NIKUD”,实际上就像字母里的圆点。 在Android的问题是,他们通常位于错误的位置。 为了展示它是多么令人讨厌,想象一下,不要展示“Hello world”。 你通常会得到“.eHlol owrld”。 即使你试图解决这个问题(把元音总是一个字符放在当前字符之后),这个字母中的位置是不正确的(假设“你好”中的“e”会像“H”例如)。 只有在4.2版本( 在这里阅读“Native RTL支持”),Google已经修复了所有希伯来语相关的问题(或者至less似乎是这样)。 问题 希伯来语的问题已经导致每个以色列航空公司和每个定制ROM制造商都有自己的解决scheme来解决不同的问题,这使得实际上不可能在4.2版本的设备上处理RTL文本。 如果文本包含希伯来文和英文字母,事情会变得更加令人沮丧。 我试过了 我已经阅读了很多关于这些问题的网站,我已经尝试了很多种解决scheme,没有一个能够解决所有设备上的问题: 有些人build议把字符'\ u200F'(或'\ u202D')放在文本的结尾/开始/结尾处。 有人build议使用Html.fromHtml()方法,并在那里放些特别的东西。 有人甚至build议使用WebView来代替(也可以使用WebSettings.setDefaultTextEncodingName() )。 这个问题 这个问题有没有确切的解决办法? 我认为最好的事情是,因为Android 4.2解决了这个问题,Android是开源的,我们应该把它的TextView导入到我们可以使用的库中,但是Google还没有提供这样的库。

WebView显示内容时是否有监听器?

使用WebViewClient和/或WebChromeClient,您可以获取页面加载时的监听器,但在WebView显示任何内容之前,有时会调用此监听器。 什么是确定WebView何时显示内容的有效方法? 编辑:(试图更清楚) 当我在WebView中加载页面时,我想将滚动设置为特定的位置。 看来,滚动的位置不能设置,直到页面加载,它有一个实际的内容高度。 所以,我已经尝试了两种不同的方法来确定页面何时完成加载,来自WebViewClient的onPageFinished()以及WebChromeClient的onProgressChanged()。 这两个告诉我什么时候页面完成加载。 但是,问题在于有时会在页面显示前被调用,因此页面没有高度,滚动调用什么也不做。 我试图find一个坚实的方式来确定页面准备好滚动,即。 当它有内容的高度。 我想我可以设置一个检查循环完成加载后,继续寻找何时可用的高度,但这似乎相当黑客。 希望有一个更清洁的方式。

使用WebView文本select的自定义上下文操作栏

我已经使用了Google的这个指南,并且这个教程创build了我自己的上下文操作栏。 private ActionMode.Callback mActionModeCallback = new ActionMode.Callback() { // Called when the action mode is created; startActionMode() was called @Override public boolean onCreateActionMode(ActionMode mode, Menu menu) { // Inflate a menu resource providing context menu items MenuInflater inflater = mode.getMenuInflater(); inflater.inflate(R.menu.annotation_menu, menu); return true; } // Called each time the action mode is shown. // […]

Android – 在webview中的本地图像

我试图在我的webview中显示本地图像: String data = "<body>" + "<img src=\"file:///android_asset/large_image.png\"/></body>"; webview.loadData(data, "text/html", "UTF-8"); 此代码不显示任何内容,而不是: webview.loadUrl("file:///android_asset/large_image.jpg"); 这一个工作,但我需要有复杂的网页,而不仅仅是一个图片。 有任何想法吗 ?

在android webview中使用JavaScript

我试图从我的web视图中的JavaScript界面​​开始一个活动。 这个例子显示了一个敬酒。 我怎么可以打电话给class级而不是吐司? public class JavaScriptInterface { Context mContext; /** Instantiate the interface and set the context */ JavaScriptInterface(Context c) { mContext = c; } /** Show a toast from the web page */ public void showToast(String toast) { Toast.makeText(mContext, toast, Toast.LENGTH_SHORT).show(); } } 这为html页面。 <input type="button" value="Say hello" onClick="showAndroidToast('Hello Android!')" /> <script type="text/javascript"> function […]

如何停止在Android的webview播放YouTubevideo?

如何停止在我的networking视图中播放的YouTubevideo? 当我点击后退button,video不会停止,而是继续在后台。 码: webView = (WebView) findViewById(R.id.webview); webView.getSettings().setPluginsEnabled(true); webView.getSettings().setJavaScriptEnabled(true); webView.getSettings().setBuiltInZoomControls(false); webView.getSettings().setSupportZoom(false); webView.loadData(myUrl,"text/html", "utf-8");

使用自定义CSS在WebView中呈现HTML

我的应用程序使用JSoup来下载留言板页面的HTML(假设在这种情况下,它是包含给定线程的post的页面)。 我想采取这种HTML,去除不需要的项目,并应用自定义CSS来风格它是在WebView中的“移动”。 当我处理它的时候,是否应该将样式注入到HTML中(因为我将会处理它)还是有一种很好的方法来将CSS文件添加到我的应用程序的资产中,并简单地引用它。 我认为后者是理想的,但不确定如何去做。 我在WebView的loadDataWithBaseURL中看到提示,可以引用本地资源,但不知道如何使用它。

Android Webview – 网页应该适合设备屏幕

我已经尝试以下来适应基于设备屏幕大小的网页。 mWebview.setInitialScale(30); 然后设置元数据视口 <meta name="viewport" content="width=320, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; minimum-scale=1.0; user-scalable=0;"/> <meta name="viewport" content="width=device-width, target-densityDpi=medium-dpi"/> 但没有任何作品,网页不固定到设备的屏幕大小。 谁能告诉我如何得到这个?