2010-09-03 3 views
13

У меня есть миниатюра видео, и когда вы нажимаете на нее, видео начинает играть в проигрывателе YouTube. Это отлично работает, но не так ясно, что вам нужно нажать на миниатюру, чтобы играть, поэтому у меня есть изображение кнопки воспроизведения, которое я хочу нарисовать над миниатюрой в нижнем правом углу. Как я могу это сделать? В настоящее время у меня есть миниатюра в объекте Drawable и кнопку воспроизведения в моем каталоге ресурса, пригодном для рисования. Я пробовал вещи с растровыми изображениями и холстом, но это довольно сложно, и я не знаю, так ли это.Android: Изображение на изображение

Большое спасибо! Эрик

ответ

27

Использование Относительный или FrameLayout:

<RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> 
    <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/thumbnail"/> 
    <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/play" android:layout_alignParentBottom="true" android:layout_alignParentRight="true"/> 
</RelativeLayout> 

или

<FrameLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> 
    <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/thumbnail"/> 
    <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/play" android:layout_gravity="bottom|right"/> 
</FrameLayout> 
+0

Отлично работает, спасибо! – Erik

+2

framelayout работал для меня, спасибо, я тоже был смущен и думал добавить его программно. – UMAR

+1

+1 Спасибо, помощник. Сначала я использовал «FrameLayout», и ваше решение работало для меня. Спасибо дружище. – Sajmon

4

Что об использовании FrameLayout или RelativeLayout укладывать взгляды ..

Экскурс в psaudo код:

<FrameLayout 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 
<com.yourpackage.VideoPlayer 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
></VideoPlayer> 

<!-- Adjust the layout position of the button with gravity, margins etc... --> 
<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_gravity="bottom" 
android:text="Play" 
/> 

</FrameLayout> 
+0

Hm хорошая идея, нет необходимости обрабатывать само изображение. Попробуем это. – Erik

+1

Удалось решить проблему с помощью FrameLayout. Благодаря! – Erik

+0

+1 для psaudo :) –

0

Я использовал RelativeLayout и он работал для меня

<RelativeLayout 
    android:id="@+id/image_container" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <android.support.v7.widget.AppCompatImageView 
     android:id="@+id/image" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:scaleType="fitXY" 
     android:adjustViewBounds="true" 
     android:clickable="true" 
     android:layout_gravity="top" 
     android:maxHeight="400dp"/> 

    <ImageView 
     android:id="@+id/play" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:src="@drawable/ic_menu_play_large" 
     android:layout_centerInParent="true" /> 

</RelativeLayout> 
Смежные вопросы