【问题标题】:How do I launch a URL in browser from an OnClick event on a TextView?如何从 TextView 上的 OnClick 事件在浏览器中启动 URL?
【发布时间】:2012-01-11 05:44:29
【问题描述】:

我已阅读答案“如何从 Android 上的应用程序在浏览器中启动 URL”,但我仍然感到困惑。

-----> 基本上我有一个 TextView,它将显示名人的不同名字,我想要的是,当用户单击 TextView 本身时,在浏览器中执行谷歌搜索,搜索当前显示在 TextView 中的文本.

谢谢。

【问题讨论】:

  • 我认为它与 android:autoLink="web" 有关,但我需要它转到 url ("google.com/search?q=" + textviewtext)。我还需要它将空格转换为 %20 或其他任何内容,以便正确搜索。也许有更简单的方法?喜欢让它执行默认搜索方法吗?有没有 android:autolink="search" 之类的东西?

标签: android url textview launch


【解决方案1】:

在 onClickListner 事件中写下这段代码:

String url = textView.getText().toString();
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);

【讨论】:

  • 非常感谢,我认为这会起作用,一旦我可以测试并确认,我将点击绿色检查,但有一个错误阻止我测试,在'source = (TextView)findViewById(R.id.sourcetv);' R被强调为错误,所以我点击导入android.R,但下划线转到'sourcetv'并说'sourcetv无法解析或不是字段'但我有'android:id = "@+id/sourcetv"' 在我的 main.xml 中用于那个 textview。
  • No 不要添加 android.R,你的 XML 中一定有错误。尝试先查看您的 xml 或清理您的项目。菜单中的项目>清理项目。如果问题仍然存在,请在此处粘贴您的 xml 代码。
  • 我仔细看了看,没有发现任何问题。这是相关部分: />
  • 如果有帮助,R 在 'setContentView(R.layout.main);' 行中加下划线太
  • 好的,我刚刚又进行了一次清理,这次使用“立即开始构建”并修复了它。我会尽快测试并勾选复选框,非常感谢您的帮助!
【解决方案2】:

嗯,我的理解是,当您单击 TextView 时,您希望启动 Google 搜索文本。这是直接启动 Google 搜索所提供文本的代码:

String searchKey = "Text From your TextView";
Intent search = new Intent(Intent.ACTION_WEB_SEARCH);  
search.putExtra(SearchManager.QUERY, searchKey);  
startActivity(search);  

【讨论】:

  • 谢谢我结合了这两个答案,但我仍然有这个 Dalvik 错误,所以我还不能测试它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-20
  • 2011-09-04
  • 2011-08-09
  • 1970-01-01
  • 2020-08-02
  • 1970-01-01
相关资源
最近更新 更多