我已从以下教程导入了源代码:
http://blog.blundell-apps.com/show-youtube-user-videos-in-a-listview/
https://github.com/blundell/YouTubeUserFeed/tree/master/res/layout
但我似乎无法增加缩略图的大小 - 我尝试在我的XML中更改userVideoThumbImageView:
android:layout_width="wrap_content"
android:layout_height="wrap_content"
到
android:layout_width="80dip"
android:layout_height="80dip"
but it only seems to increase the size of the black space around the thumbnail.
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal" >
<com.blundell.tut.ui.widget.UrlImageView
android:id="@+id/userVideoThumbImageView"
android:layout_width="80dip"
android:layout_height="80dip"
android:contentDescription="YouTube video thumbnail"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/userVideoTitleTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Video Title Not Found" />
</LinearLayout>
答案 0 :(得分:0)
该教程在实现异步任务方面并不是那么好。虽然runnables工作正常,但在Android中,AsyncTask将提供更多控制。
现在,对于您遇到的问题,我相信youtube提供了各种尺寸的缩略图,您似乎正在拉小版本。使用较大的一个会有所帮助,但速度会慢一些。
在GetYouTubeUserVideosTask课程中,您将找到代码行
String thumbUrl = jsonObject.getJSONObject("thumbnail").getString("sqDefault");
它从接收的JSON中提取标准质量图像,您应该使用高质量图像。这可以通过改为
来实现 String thumbUrl = jsonObject.getJSONObject("thumbnail").getString("hqDefault");
您可以通过查看正在使用的网址随时查看示例请求并查看数据,返回看起来像这样:
“缩略图”:{ “sqDefault”: “https://i.ytimg.com/vi/NnL0QOtK-o8/default.jpg”, “hqDefault”: “https://i.ytimg.com/vi/NnL0QOtK-o8/hqdefault.jpg”}
这样你知道你有各种各样的选择。