android如何在像GMail这样的webview中显示PopupMenu
Posted
技术标签:
【中文标题】android如何在像GMail这样的webview中显示PopupMenu【英文标题】:android how to show PopupMenu in webview like GMail 【发布时间】:2015-01-23 00:04:00 【问题描述】:我想在我的应用程序(如 GMail)的 web 视图中显示 PopupMenu。
这是我的代码:
webView.addjavascriptInterface(new WebAppInterface(getActivity()), "ScriptToandroid");
<div class="moreover_icon" onclick="showPopup('file_attach_path', event)">
<img class="overflow_icon" src="android_moreover_icon"/>
</div>
<script type="text/javascript">
function showPopup(file_path, event)
ScriptToAndroid.showPopupDialog(file_path, pos_x, pos_y);
</script>
@JavascriptInterface
public void showPopupDialog(String filePath, int x, int y)
//show PopupMenu
【问题讨论】:
有人需要回答吗? 【参考方案1】:使用 WebViewClient
mWebView = (WebView) findViewById(R.id.webView);
mWebView.setWebViewClient(new WebClient(this));
拦截 shouldOverrideUrlLoading()
public class WebClient extends WebViewClient
MainActivity mainActivity;
public WebClient(MainActivity activity)
mainActivity = activity;
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
if(url.contains("xxx"))
Log.i("show pop", "xx");
return false;
@Override
public boolean shouldOverrideKeyEvent(WebView view, KeyEvent event)
return super.shouldOverrideKeyEvent(view, event);
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon)
super.onPageStarted(view, url, favicon);
@Override
public void onPageFinished(WebView view, String url)
【讨论】:
他们是如何创建附件视图的,我的意思是他们使用的是自定义 html 布局?以上是关于android如何在像GMail这样的webview中显示PopupMenu的主要内容,如果未能解决你的问题,请参考以下文章
如何在像 snapchat 故事一样从底部滑动到顶部 android 时打开底部工作表片段
在像 bittorrent 这样的点对点协议的情况下,NAT 遍历是如何工作的。
在像 bittorrent 这样的点对点协议的情况下,NAT 遍历是如何工作的。