Ich verwende eine ImageView einer Karte in meiner App, die Karte muss gescrollt werden, und ich habe zwei horizontale und vertikale Scrollview dafür verwendet, aber die relative Ansicht in der Scrollansicht manipuliert die Koordinaten des Bildes, so dass die String xValue = String.valueOf(event.getX());
ein großes x wie in einem Bild mit Dims von 400 * 250 zurück! aber der zurückgegebene y-Wert ist korrekt, indem lineares Layout verwendet verursacht ein Problem, das in this link beschrieben wird. (Die äußeree Relative Ansicht verursacht dieses Problem)Relatives Layout ändert die Koordinaten von Bildansicht
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="100dp"
android:layout_marginTop="150dp"
android:scrollbarStyle="outsideOverlay"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="center"
android:id="@+id/relative_mother"
android:background="#000000"
android:padding="3dp">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scrollbarStyle="outsideOverlay"
android:foregroundGravity="center"
android:background="#F0F0B0"
android:id="@+id/map_scrollview"
android:paddingLeft="32dp"
>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="32dp"
android:paddingLeft="220dp"
android:paddingRight="12dp">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:srcCompat="@android:drawable/ic_input_add"
android:id="@+id/imageView2"
android:gravity="center_vertical|center_horizontal"/>
</LinearLayout>
</ScrollView>
</RelativeLayout>
</HorizontalScrollView>
mit Hilfe von Frame-Layout hat mir geholfen und die Schwerkraft wie Sie gesagt. –