Come posso aggiungere un bambino (un layout) in una vista gestureoverlay nel punto in cui ho toccato quella vista ... È possibile posizionarlo in base alle coordinate della posizione ??Aggiunta di un bambino in GestureOverlayView sul punto in cui ho toccato in Android?
10
A
risposta
1
Per API 11 (3.0.x Android) e soprattutto: è possibile utilizzare View.setX()
e View.setY()
. Vedi API docs per i dettagli.
Per tutte le versioni API: si potrebbe usare RelativeLayout
e RelativeLayout.Layout
. Specificamente impostando margins nei campi ereditati da ViewGroup.MarginLayoutParams
. Credo che sarebbe più o meno così:
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);
}
Problemi correlati
- 1. Polilinea Android - Aggiunta punto per punto
- 2. Aggiunta di scroll in tabhost in android
- 3. Non c'è un punto in cui l'incapsulamento diventa ridicolo?
- 4. GestureOverlayView e Double-Tap
- 5. Aggiunta WebAPI da bambino/applicazione nidificato in IIS
- 6. Come aprire un bambino nidificato PREFERENCE in Android
- 7. Le prestazioni di GestureOverlayView e GestureDetector
- 8. Come modificare i parametri di layout di un bambino in un ListView in Android?
- 9. In Perl, come posso chiamare un metodo di cui ho il nome in una stringa?
- 10. Punta e clicca, o in generale sposta il cursore sul punto in cui stai guardando in Vim
- 11. Notifica Firebase sul bambino aggiunto/modificato
- 12. Ruota un punto in un altro punto in 2D
- 13. Aggiunta di righe della tabella in modo dinamico in Android
- 14. ANR in com.android.launcher dopo aver toccato indietro
- 15. Aggiunta di testo a ImageView in Android
- 16. Come cercare un bambino in un pannello in ExtJs
- 17. Come rimuovere un bambino in seguito? (Cocos2d)
- 18. Informazioni sul punto di ingresso di PE in Windows
- 19. Non ho directory libs in Android Studio
- 20. Modifica del punto in cui il cursore si avvia in un ampliamento EditText
- 21. Aggiunta di un file .so in Studio Android
- 22. Get vista Bambino in un RelativeLayout
- 23. Posso usare un vettore drawable nello stesso modo in cui ho usato una patch 9?
- 24. Aggiunta di permessi in AndroidManifest.xml in Android Studio?
- 25. Dopo un conflitto di merge, molti file che non ho toccato diventano modifiche da impegnare
- 26. Impostazione punto di interruzione in GDB in cui la funzione restituisce
- 27. Come ruotare un'icona di Android sul suo punto centrale?
- 28. Capture KeyUp sulla forma in cui il controllo bambino ha concentriamoci
- 29. C'è un modo per reimpostare $ toccato in Angolare?
- 30. Perché ho bisogno di un punto e virgola qui?
Hai provato a usare la mia soluzione o ha trovato la propria? – vArDo