android - 在外部浏览器中打开多个链接
问题描述
我有一个网址列表。我需要在外部浏览器中一次打开它们,每个链接的页面都会生成一个新选项卡。例如,如果列表有指向 google.com 和 yahoo.com 的链接,它们都应该在浏览器中各自单独的选项卡中打开。
在外部浏览器中打开单个链接非常简单——创建一个 ACTION_VIEW 意图,设置 url 并调用 startActivity。但是如何使用多个 url 来做到这一点?执行多个 startActivity 调用将不起作用。有任何想法吗?
感谢您的时间!
解决方案
我的回答是基于一些研究,所以我不确定确切的代码,但我会在这里提出一种方法
首先,您可以在布局文件中分别使用视图类型Fragment
或视图类型,并根据您的用例,获取. 我们会将您的 url 列表传递给包含 Webview 的活动Activity
WebView
WebView
说,我们这样做
val arrayList = getIntent().getArrayListExtra("urls")
val webView = findViewById<WebView>(R.id.myWebview)
现在我们可以收听滚动变化WebView
并等待用户到达WebView
页面末尾,如下面的链接所示
然后当到达滚动结束时,我们可以从数组中加载下一个 url
webView.setOnScrollChangeListener((view, i, i1, i2, i3) -> {
int r1 = webView.computeVerticalScrollRange();
int r2 = webView.computeVerticalScrollExtent();
if (i1 == (r1 - r2)) {
webView.loadUrl(arrayList.get(1) // Or Whatever your next
index is
// Maybe maintain a global variable for which url is currently
loaded
}
});
为了让用户体验更好,您可以考虑WebViewClient
为您设置一个WebView
并覆盖onProgressChanged
以向用户显示进度,以防万一他不感到迷失
推荐阅读
- csv - Jmeter从csv文件中删除重复行
- python - 使用 Python 将带有文本的 PDF 文件导入 CSV 文件
- php - php在查询中使用''而不将值转换为指针
- r - 如何在给定的函数中使用apply
- sql - 在 Postgresql 中返回一个自定义类型的表
- python - 根据数据中的当前组合创建一种数据框列的笛卡尔积
- codeigniter - 如何从 CodeIgniter 中的视图将变量传递给控制器函数?
- graph - 从 ADC 数据处理中的实时图表
- python - python - 如何选择所有单词以及标点符号,这些单词在python字符串中的另一个单词之后
- typescript - 如何在 TypeScript 编译器中使用多个 node_modules 目录?