Y a-t-il un moyen de définir l'image de fond d'une vision de surface? Cela doit-il être fait en XML ou puis-je faire tout cela en Java - j'ai quelque chose qui ressemble à ceci dans mon constructeur: mais cela ne montre toujours rien. p> p>
5 Réponses :
Vous ne pouvez pas définir de fond introduit sur une vue superficielle. Vous devrez dessiner l'arrière-plan sur la surface vous-même. P>
Ok, donc dans la méthode ondraw () que je présume?
Non, ONDRAW () ne fera pas ce que vous voulez. Lorsque vous utilisez une vision superficielle, vous le rendez à l'aide d'un contexte OpenGL ou vous saisissez la toile de la surface à travers la surface. Vous devez rendre votre antécédent à l'aide de cette toile (ou OpenGL si vous faites OpenGL.)
J'utilise seulement une toile - j'essaie simplement de comprendre comment je ferais cela avec la toile.
salut comment adapter l'image sur toile et au centre de la supervision
Bien que techniquement, cette réponse soit correcte, la réponse @XAV ci-dessous offre une bonne alternative qui atteignait ce que l'OP avait demandé.
Essayez ceci
Comment je peux donner la taille de la mise en page sur le dessin bitmap sur toile et le placer au centre de la supervision.
Pendant que vous ne pouvez pas définir directement une image d'arrière-plan sur un J'ai eu des problèmes de performances lors de la création d'un bitmap de 1920x1080 comme une image d'arrière-plan pour chaque View View repeindre: la seule solution que j'ai trouvée (grâce à cette réponse ) utilisait un alors vous devez démarrer votre méthode de peinture code> de code> avec ceci: (dans l'ordre Pour "affleurer" l'image dessinée précédente dans superficiel code>, vous pouvez chevaucher un
imageview code> (affichant votre image d'arrière-plan) et votre
superficiel Code> en plus de cela, ce qui le rend transparent.
imageview code> affichant ce bitmap 1920x1080 (fixe) et à l'aide de mon
superficiel code> sur le dessus de celui-ci, faisant Il transparent, pour éviter de peindre la grande image de fond pour chaque
superficiel code> repeindre. Maintenant, mon application est beaucoup plus fluide, grâce à ce code: p>
superficielle code> S) p>
Merci mec! 2 jours j'essayais de faire ça! Après 5 ans, cela sauve toujours la vie de quelqu'un.
merci beaucoup ... que canvas.drawcolor (0, porterduff.mode.clear); code> est embrayage!
Un petit ajout à la réponse de XAV. Vous voudriez définir la vue de contenu en tant que rootpanel par la suite:
setContentView(rootPanel);
your surfaceView.setBackground(getResources().getDrawable(R.drawable.?));