我试图创建用户可以查看的视频列表。这需要是动态的,因为列表将根据添加到正在绘制视频的数据库的新条目进行更新。以编程方式创建视频列表
对于我的项目,我通过其简单的API访问来自vimeo的视频列表。我用来显示所有信息的当前方法是通过一个webview对象,它从StringBuilder对象htmlString获取它的信息。
我的看法XML如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<WebView
android:id="@+id/videoMenu"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true" />
</RelativeLayout>
的,我用它来建立我的清单的代码段动态如下。它返回一个函数“onPostExecute(String result)”,它显示了web视图和从for循环创建的html。
for (VideoDataParser.Entry video : videos)
{
htmlString.append("<p>");
htmlString.append("<a href=\"" + video.url + "\">");
htmlString.append("<img align=\"left\" src=\"" + video.thumbnail_url + "\">");
htmlString.append(video.title + "<br>");
htmlString.append(video.description);
htmlString.append("</p>");
}
return htmlString.toString();
我现在的主要问题是图像未加载。我想这是因为它需要另一个HTTP请求来获取图像。有没有其他方法可以解决这个问题?
此外,我觉得这种创建菜单的方法可能不是最好的。当用户点击链接时,控制流程会超出我的活动范围,并转到网络浏览器,在其中播放视频。我希望该活动能够通过点击我的某个选项而进入我自己的视频播放器,而不是使用互联网。这很有可能是一种更好的方式,但我不确定。
任何输入都会很棒。
谢谢!这很有帮助!我发布了这个以后,我一直在相当广泛地研究这种方法,看起来它可以真正起作用! 还有一个问题。我仍然在想办法让图片缩略图显示在列表中。有没有加载这些图像的方法? – ahauth 2012-08-01 03:22:57
当然有办法做到这一点,但它取决于你的图像来自哪里。如果您正在从SD卡或资产中加载这些图像,则必须使用[loaddatawithbaseurl](http://developer.android.com/reference/android/webkit/WebView.html)并将您的html发送到一个字符串和你的baseurl将取决于你的图像来自何处。如果您的图像来自URLS,那么您可以使用loaddata方法并指向html中的图像。我希望这能解决你的问题,如果不是,请重播。 – 2012-08-01 15:39:20
此外,如果这解决了您的问题,请将答案标记为已接受,所以如果有人来看看它们,他们会知道这对您有帮助。 – 2012-08-01 15:43:09