0

我不确定为什么,但我正在尝试设置缩略图的大小来填充父级,但是他们似乎没有这样做,我不确定为什么。

我已将参数设置为(我相信)它们应该是,但缩略图仍然不会延伸到屏幕边缘。

截屏

在此处输入图像描述

XML

 <LinearLayout 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"
    android:orientation="vertical"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:autoLink="web"
        android:textStyle="bold" />

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" 
        android:id="@+id/groupScrollView">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <com.google.android.youtube.player.YouTubePlayerView
                android:id="@+id/youtubeplayerview"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

            <TextView
                android:id="@+id/textView1a"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Throw &apos;Em Up"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView2a"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="by DJ Generic"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <TextView
                android:id="@+id/textView3a"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="100,000 views"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <com.google.android.youtube.player.YouTubeThumbnailView
                android:id="@+id/youtubethumbnailview1"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:padding="5dp" />

            <TextView
                android:id="@+id/textView1b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Bulls On Parade"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView2b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="by Rage Against the Machine"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <TextView
                android:id="@+id/textView3b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="100,000 views"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <View
                android:layout_width="1dp"
                android:layout_height="5dp" >
            </View>

            <com.google.android.youtube.player.YouTubeThumbnailView
                android:id="@+id/youtubethumbnailview2"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:padding="5dp" />

            <TextView
                android:id="@+id/textView1b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Isaac Daniel at CNN Anderson Cooper"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <TextView
                android:id="@+id/textView2b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="by idconex"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <TextView
                android:id="@+id/textView3b"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="678,000,000 views"
                android:textAppearance="?android:attr/textAppearanceSmall" />

            <View
                android:layout_width="1dp"
                android:layout_height="5dp" >
            </View>
        </LinearLayout>
    </ScrollView>

</LinearLayout>
4

2 回答 2

10

添加android:adjustViewBounds="true"到您的视图。

我做了:

<com.google.android.youtube.player.YouTubeThumbnailView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"/>

缩略图与我的父布局保持 16:9 的比例相匹配。

于 2015-03-17T14:00:26.323 回答
0

我设法通过使用谷歌为 youtube 缩略图(https://support.google.com/youtube/answer/72431?hl=en)声明的纵横比最佳实践来解决这个问题。

他们声明缩略图应该有 16:9 的纵横比,所以当我创建视图时,我得到它的父宽度并根据它计算高度。我找不到任何其他方法来缩放拇指图像以适应屏幕宽度(YoutubeThumbnailView 已缩放,但其中的图像未缩放)。

    View parentView = activity.findViewById(parentId);
    int parentWidth = parentView.getWidth();
    int youtubeThumbnailHeight = (int) (parentWidth * aspectRatioY / aspectRatioX);
    thumb.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, youtubeThumbnailHeight));

其中 aspectRatioY 为 9,aspectRatioX 为 16。

我知道这不是一个好的解决方案,但是在搜索了一段时间没有结果之后,这是我能做的最好的。希望能帮助到你。

于 2014-06-13T07:53:12.643 回答