Views überlagen (vermutlich Anfängerfrage)

T

Tim Posnien

Neues Mitglied
0
Hallo *,
Ich versuche folgendes Problem zu lösen:

Das preview Bild der Kamera soll angezeigt werden, auf dem Bild werden Zusatzinformationen zu Objekten eingeblendet.

Da ich es adhoc nicht geschafft habe irgendwie in dem Stream der kamera zu malen, habe ich für den Anfang eine Activity genommen, die mir das Bild der Kamera darstellt. Dazu habe ich eine Class "Preview" (extends SurfaceView implements SurfaceHolder.Callback), bastel da mit der Cam drin rum, instanziere sie und setze sie als contentView:

Code:
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]mPreview [/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]= [/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]new[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] Preview([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE][LEFT][SIZE=2]setContentView([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]mPreview[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]);[/SIZE][/LEFT]

Das funktioniert auch wunderbar. Nun habe ich ene zweite Activity geschrieben, in der ich eine Classe SampleView (extends View) habe, auf der ich mit onPaint ein wenig malen kann. Hier instanziere ich noch eine GPS Connection und einen SensorListener um die Position des Gerätes inklusive der "Blickrichtung" zu bekommen. Ändert sich nun die Position relevant (oder die Blickrichtung") feuere ich eine Webrequest ab, die mir in der gegend zu malende Objekte wieder gibt. (Die male ich dann ;) )

Code:
[SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]mysa[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] = [/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]new[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2] SampleView([/SIZE][B][SIZE=2][COLOR=#7f0055][SIZE=2][COLOR=#7f0055]this[/COLOR][/SIZE][/COLOR][/SIZE][/B][SIZE=2]);[/SIZE]
[SIZE=2]setContentView([/SIZE][SIZE=2][COLOR=#0000c0][SIZE=2][COLOR=#0000c0]mysa[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]);[/SIZE]

funktioniert auch super. mysa ist durchsichtig und ich würde nun gerne eine Activity haben, in der alle zugleich läuft und ich mein gemaltes Zeug über mein mPreview legen kann, nur daran scheitere ich kläglich. Wie müsste eine solche Activity aufgebaut sein? (oder würdet ihr das ganze komplett anders lösen?)​

Danke & Gruß, Tim.​
 
Ich hab des nu selber lösen können:
Code:
mysa = new SampleView(this);
mysa.setBackgroundColor(Color.TRANSPARENT);
mPreview = new Preview(this);
final FrameLayout fl = new FrameLayout(this);
fl.addView(mPreview);
fl.addView(mysa);
setContentView(fl);
 

Ähnliche Themen

H
Antworten
4
Aufrufe
600
HTCUserRay
H
S
Antworten
1
Aufrufe
1.085
Jaiel
Jaiel
G
Antworten
16
Aufrufe
1.700
swa00
swa00
Zurück
Oben Unten