Wie kann ich ein Kind (ein Layout) in einer Gesteoverlayview an dem Punkt hinzufügen, wo ich in dieser Ansicht berührt habe ... Ist es möglich, es nach den Koordinaten des Ortes zu positionieren ??Hinzufügen eines Kindes in einer GestureOverlayView an dem Punkt, wo ich in Android berührt?
10
A
Antwort
1
Für API 11 (Android 3.0.x) und höher: können Sie View.setX()
und View.setY()
verwenden. Details finden Sie unter API docs.
Für alle API-Versionen: können Sie RelativeLayout
und RelativeLayout.Layout
verwenden. Insbesondere durch Setzen von margins in von ViewGroup.MarginLayoutParams
geerbten Feldern. Ich denke, es so etwas wie dies gehen würde:
RelativeLayout parentLayout = (RelativeLayout) findViewById(R.id.relative_layout);
LinearLayout newLayout = new LinearLayout(this); // or some other layout
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
// You can enter layout absolute dimensions here instead of 'wrap_content'.
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
// Set your X and Y position here for new layout.
layoutParams.setMargins(100 /*left*/, 200 /*top*/, 0 /*right*/, 0 /*bottom*/);
parentLayout.addView(newLayout , layoutParams);
0
public boolean onTouchEvent(MotionEvent event) {
TextView tv=new TextView(this);
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
case MotionEvent.ACTION_UP:
x = event.getX();
y = event.getY();
RelativeLayout gh = (RelativeLayout) findViewById(R.id.relative1);
RelativeLayout.LayoutParams para = new RelativeLayout.LayoutParams(150, 50); //Size of textView
para.leftMargin = (int) x; //location of textview
para.topMargin = (int) y;
tv.setLayoutParams(para);
tv.setText("You have Touched at "+x+" ,"+y);
change();
gh.addView(tv);
}
Verwandte Themen
- 1. Android Polyline - Hinzufügen Punkt für Punkt
- 2. Javascript regex an dem Punkt, zu spalten, wo Klein Änderungen
- 3. An welchem Punkt kann ich benutzerdefinierte Informationen in userDetails hinzufügen?
- 4. Wie behandelt man onTouch Event eines Kindes in Eltern?
- 5. alle Eltern eines Kindes in mysql bekommen?
- 6. Hinzufügen eines Filters in WO gegen FROM
- 7. cocos2d Bestimmen, wo auf dem Bildschirm Benutzer berührt
- 8. Erstellen eines Code-Generator in Ruby .. Wo fange ich an?
- 9. Wo kann ich Ordner von Klassen in Android Studio hinzufügen?
- 10. Wie ändert man die Layout-Parameter eines Kindes in einer ListView in Android?
- 11. GestureOverlayView nicht funktioniert
- 12. Stop CABasicAnimation an bestimmten Punkt
- 13. wie man Farbe auf dem Punkt (oder Pixel) eines Bildes auf Berührungsereignis in android erhalten
- 14. Wie bekomme ich den Inhalt eines Kindes div javascript
- 15. Android: Hinzufügen eines Fragments zu einer Aktivität
- 16. iOS - Wie zeichne Punkt auf einer Linie, in der der Benutzer beim Ziehen berührt
- 17. Wie bekomme ich ein Kind eines Kindes? Umbraco CMS
- 18. Hinzufügen eines Zeichens innerhalb einer angegebenen "Path" Variable in Android?
- 19. Optimaler Punkt auf dem Umfang eines Kreises
- 20. eine abstrakte Methode eines Kindes-Klasse von einer abstrakten Klasse
- 21. Stop-Code an einem bestimmten Punkt in einer Methode
- 22. Python - Ausschneiden eines Arrays an einem bestimmten Punkt basierend auf dem Wert in Zeile
- 23. Hinzufügen eines Fortschrittsdialogs in einer Webansicht
- 24. Vergleich einzelner Punkt mit dem Punkt davor
- 25. Zeichnung Linie auf berührt bewegt in COCOS2D
- 26. Die Leistung von GestureOverlayView und GestureDetector
- 27. Punkt in einer Linie basierend auf dem 3. Punkt tangential zu dieser Linie suchen
- 28. Android falsches Verhalten des Kindes CheckBox
- 29. Schalten Sie die neue Ausgabe (stdout, stderr) eines Kindes Prozess an das Ausgabefenster in Visual Studio
- 30. Android Hinzufügen eines neuen Kalenders
Haben Sie versucht, meine Lösung mit oder haben herausgefunden, können Sie Ihre eigene? – vArDo