2012-03-07 3 views
0

J'utilise ICS et j'essaie d'afficher un calque Renderscript transparent sur une vue normale. Je voudrais utiliser RS ​​pour dessiner du texte sur l'application. J'utilise setAlpha (8, 8); et je peux voir que la couche générée c'est BGRA (dumpsys SurfaceFlinger).Transparence Renderscript/alpha

Mon script RS est simplement en train de faire ceci:

rsgClearColor(0.0f, 0.0f, 0.0f, 0.0f); 
rsgDrawText("Hello!", 50,50); 

Je voudrais pouvoir montrer ce texte de dessin de la couche renderScript, sur mon point de vue régulier.

Mon activité principale utilise setContentView deux fois, une pour ma vue principale et une seconde pour le RS. Même si cette approche pourrait être fausse, je devrais au moins être en mesure de voir l'arrière-plan de l'application, alors que je ne vois que le noir et le "Bonjour!" texte en blanc couvrant tout. J'ai également essayé d'utiliser deux activités différentes, mais je n'ai jamais réussi à rendre la couche RenderScript transparente.

Des idées?

Répondre

1

Vous devez également définir PixelFormat et ZOrder de votre vue Renderscript. Essayez d'ajouter ceci lorsque vous créez votre vue Renderscript:

view.getHolder().setFormat(PixelFormat.TRANSLUCENT); 
view.setZOrderOnTop(true);