L
Lainio
Ambitioniertes Mitglied
- 3
Hallo liebe Community,
ich bin gerade an einer Sache die mir langsam Kopfschmerzen bereitet.
Ich habe eine ImageView mit der ID zoom die den gesamten Bildschirm füllt.
Darüber eine kleine ImageView 55x55 mit der ID move.
Die ID's sagen eigentlich auch schon die Funktion der ImageView's aus.
Die ImageView move soll über den Bildschirm bewegt werden was ich auch erfolgreich geschafft habe:
Für zoom habe ich ein fertiges Projekt PhotoViewAttacher das es mir ermöglicht zoom, doppeltipp-zoom und das bewegen des Bildes.
Woran ich gerade scheitere ist, die ImageView move an das große Bild im Hintergrund zu verankern. Sprich wennn ich reinzoomen sollte und das Bild nach rechts bewege, soll die Position von move nicht verändert werden. Das Bild sollte da bleiben wo es ist und mit dem zoom auch mit zoomen.
Ist das irgendwie möglich? Wenn ja wie würde das gehen?
Ich danke im Voraus!
ich bin gerade an einer Sache die mir langsam Kopfschmerzen bereitet.
Ich habe eine ImageView mit der ID zoom die den gesamten Bildschirm füllt.
Darüber eine kleine ImageView 55x55 mit der ID move.
Die ID's sagen eigentlich auch schon die Funktion der ImageView's aus.
Die ImageView move soll über den Bildschirm bewegt werden was ich auch erfolgreich geschafft habe:
Code:
final int X = (int) event.getRawX();
final int Y = (int) event.getRawY();
//Definition MotionEvent.ACTION_MASK: Bit mask of the parts of the action code that are the action itself.
switch (event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
RelativeLayout.LayoutParams lParams = (RelativeLayout.LayoutParams) v.getLayoutParams();
int i = lParams.leftMargin;
_xDelta = X - lParams.leftMargin;
_yDelta = Y - lParams.topMargin;
break;
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_POINTER_DOWN:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
case MotionEvent.ACTION_MOVE:
RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) v
.getLayoutParams();
layoutParams.leftMargin = X - _xDelta;
layoutParams.topMargin = Y - _yDelta;
layoutParams.rightMargin = -250;
layoutParams.bottomMargin = -250;
v.setLayoutParams(layoutParams);
break;
}
viewGroup.invalidate();
return true;
Für zoom habe ich ein fertiges Projekt PhotoViewAttacher das es mir ermöglicht zoom, doppeltipp-zoom und das bewegen des Bildes.
Woran ich gerade scheitere ist, die ImageView move an das große Bild im Hintergrund zu verankern. Sprich wennn ich reinzoomen sollte und das Bild nach rechts bewege, soll die Position von move nicht verändert werden. Das Bild sollte da bleiben wo es ist und mit dem zoom auch mit zoomen.
Ist das irgendwie möglich? Wenn ja wie würde das gehen?
Ich danke im Voraus!