Hallo,
ich möchte Objekte zur Laufzeit erzeugen und dann hin und her schieben können. Probieren tue ich es mit GestureDetector.
Die objekte erzeuge ich so:
	
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Im event Drag versuche ich das Objekt aufzulösen:
	
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Das onDouble_Event habe ich zum testen eingefügt. Leider wird das Objekt nicht aufgelöst , d.h. im Double_Event wird als Tag
immer das letzte Wert angezigt und nicht der vom Objekt. Dementsprechend ist das Verhalten beim Drag, also andere Objekte werden
bewegt. Was und wie muss ich ändern, damit ich das Vorhaben umsetzen kann?
Vielen Dank
			
			ich möchte Objekte zur Laufzeit erzeugen und dann hin und her schieben können. Probieren tue ich es mit GestureDetector.
Die objekte erzeuge ich so:
			
				B4X:
			
		
		
		Sub Button1_Click
    zaehler=zaehler +1
    Dim btn As Button
    btn.Initialize("btn")
    btn.Text="test" & zaehler
    btn.Tag=zaehler
    btn.Color=Colors.Green
    Activity.AddView(btn,20dip,20dip,120dip,50dip)
    gd.SetOnGestureListener(btn,"Gest")
End Sub
	Im event Drag versuche ich das Objekt aufzulösen:
			
				B4X:
			
		
		
		Private Sub Gest_onDrag(deltaX As Float, deltaY As Float, MotionEvent As Object)
    Dim bt As Button
    bt=Sender
    
    bt.Left=Max(0,Min(bt.Left+deltaX,100%x-bt.Width))
    bt.Top=Max(0,Min(bt.Top+deltaY,100%y-bt.Height))
    
End Sub
Private Sub Gest_onDoubleTap(X As Float, Y As Float, MotionEvent As Object)
    Dim bt As Button
    bt=Sender
    
    
    MsgboxAsync(bt.Tag,"")
End Sub
	Das onDouble_Event habe ich zum testen eingefügt. Leider wird das Objekt nicht aufgelöst , d.h. im Double_Event wird als Tag
immer das letzte Wert angezigt und nicht der vom Objekt. Dementsprechend ist das Verhalten beim Drag, also andere Objekte werden
bewegt. Was und wie muss ich ändern, damit ich das Vorhaben umsetzen kann?
Vielen Dank
			
				Last edited: