2016-05-24 10 views
2

Ich arbeite an der TV-App und versuche, leanback support library so viel wie möglich zu verwenden. Das Problem, auf das ich stieß, ist, dass ich versuche, eine Ansicht oben auf die ImageView in ImageCardView hinzuzufügen. Ich möchte meine benutzerdefinierte Ansicht über diesem Bild zentriert haben.Add View Overlay oben auf ImageCardView

Ich habe versucht, einfach den View on 0 Index hinzuzufügen, aber es schiebt nur das Bild nach unten und sitzt oben drauf. Ich sehe die ImageCardView ist FrameLayout aber es scheint, dass FrameLayout geändert wird, so dass alle Kinder vertikal ausgerichtet sind.

Ich habe auch versucht, ein Elternteil von ImageCardView, die ShadowOverlayContainer ist, und fügen Sie die Ansicht dort hinzu, aber es immer noch nicht angezeigt.

Beispiel für reguläre Karte:

enter image description here

Was ich zu erreichen versuchen: enter image description here

Irgendwelche Vorschläge, wie man diese Ansicht hinzufügen? Vielen Dank.

+0

Haben Sie versucht, das 'Layout' von' Leanback Library' selbst zu modifizieren? –

+0

@jaydroider, du meinst mein eigenes zu erstellen und 'mageres' zu ersetzen? – Astagron

+1

Ändern Sie die 'Image Card View'' Layout' von 'Lean Back Library', die in' SDK' selbst existiert. Es wird den Trick für Sie tun. –

Antwort

0

Ich denke, das funktioniert.

onBindViewHolder(){ 

. 

.. 

... 

int count = ((ViewGroup)((ImageCardView) viewHolder.view).getMainImageView().getParent().getParent()).getChildCount(); 

((ViewGroup)((ImageCardView) 
viewHolder.view).getMainImageView().getParent().getParent()).addView(xxx, count); 
} 
+0

Bitte erläutern Sie mit Ihrem Code, warum Sie glauben, dass dies funktioniert. Dies wird dem OP und den zukünftigen Besuchern helfen zu verstehen. – Bugs

+0

es funktioniert nicht – gkpln3