【问题标题】:Going from a List View to a Web View从列表视图转到 Web 视图
【发布时间】:2010-12-29 18:24:52
【问题描述】:

我正在尝试弄清楚如何从列表视图转到 Web 视图。

我有一个不同项目的列表,根据选择的项目,我想为 Web 视图加载不同的 URL。

因为我无法扩展 Activity 和 ListActivity,所以我不知道如何在同一个类中执行此操作。

我尝试根据选择的列表项创建一个 switch 语句,然后分配 URL 并将其加载到不同的类中,但这似乎有点太复杂了。

有更简单的方法吗?

【问题讨论】:

  • 您是否尝试过在列表视图中创建一个 .xml 并使用 webviews 作为您的选项?然后在 onClick 方法中调用您喜欢的每个 webview 的单独类?

标签: android url listview webview


【解决方案1】:

我认为你做对了:

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);
    change(position);
}
void change(int position){
    Uri uri;
    switch(position){
       case 1:
          uri=Uri.parse(yourTextContaingUrl1);
       case 2:
          uri=Uri.parse(yourTextContaingUrl2);
       case 3:
          uri=Uri.parse(yourTextContaingUrl3);
    }
    intent = new Intent(Intent.ACTION_VIEW, uri);
    startActivity(intent);
}

【讨论】:

  • 这就是我需要做的。谢谢!
【解决方案2】:

这将为给定的 URL 调用 WebView

Uri uri=Uri.parse(yourTextContaingUrl);
intent = new Intent(Intent.ACTION_VIEW, uri);
activity.startActivity(intent);
return true;

【讨论】:

  • ACTION_VIEW Intent 和 webview 一样吗?有什么办法可以摆脱顶部的浏览器栏?
  • 意图概念有点难以理解。需要向 Intent 提供特定数据(uri 和数据类型),然后系统应该(如果可能)找到合适的应用程序/活动来处理请求。因此,从您的角度来看,您只需要为系统准备适当的查询(在上面的代码中)。当然,系统可能不会使用 WebView 来显示您的 url,而是其他情况(取决于特定手机中安装的内容)
【解决方案3】:

我不知道怎么做 同一堂课,因为我无法扩展 Activity 和 ListActivity。

ListActivity 扩展了 Activity...

【讨论】:

  • 我应该知道...哈哈。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多