2010-09-03 31 views
13

Ho una miniatura del video e quando si fa clic su di esso, il video inizia a essere riprodotto nel lettore YouTube. Funziona alla grande, ma non è così chiaro che devi cliccare sulla miniatura per giocare, quindi ho un'immagine di pulsante di riproduzione che voglio disegnare sulla miniatura nell'angolo in basso a destra. Come andrei su questo? Attualmente ho la miniatura in un oggetto Drawable e il pulsante play nella mia directory delle risorse drawable. Ho provato cose con bitmap e canvas ma è piuttosto difficile e non so se questa è la strada da percorrere.Android: Immagine su immagine

Grazie mille! Erik

risposta

27

Usa relativo o 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> 

o

<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

Funziona alla grande, grazie! – Erik

+2

framelayout ha funzionato per me, grazie anche io ero confuso e stavo pensando di aggiungerlo a livello di programmazione. – UMAR

+1

+1 Grazie amico. All'inizio ho usato 'FrameLayout' e la tua soluzione ha funzionato per me. Grazie compagno. – Sajmon

4

Cosa succede ad usare un FrameLayout o un RelativeLayout di impilare i punti di vista ..

Qui segue un certo codice 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 buona idea, non c'è bisogno di elaborare l'immagine stessa. Provare questo. – Erik

+1

È riuscito a risolverlo con un FrameLayout. Grazie! – Erik

+0

+1 per psaudo :) –

0

ho usato RelativeLayout e ha funzionato per me

<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>