J'ai une disposition scrollview, avec quelques textviews et boutons, et aussi une carte au milieu.Tout le contenu de cette disposition est sur un scrollview, parce qu'il a beaucoup de choses, et l'utilisateur doit faire défiler les fenêtres pour tout voir.Problèmes avec une mise en page scrollview avec du texte et une carte sur elle ... je ne peux pas déplacer la carte
Mais alors j'ai un problème, quand l'utilisateur essaie de déplacer la carte, il ne bouge pas, et le doigt fait défiler toute la fenêtre, à cause de la scrollview. C'est cool d'avoir la possibilité de faire défiler toute la fenêtre, mais je veux que lorsque l'utilisateur bouge le doigt sur la carte, l'utilisateur ne fait défiler que la carte.
existe un moyen de résoudre ce problème sans supprimer le scrollview? j'en ai besoin!
il y a le code:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10px">
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/UserLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5px"
android:text="@string/userlabel"/>
<TextView
android:id="@+id/User"
android:layout_alignBaseline="@id/UserLabel"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/PermissionLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13px"
android:text="@string/perlabel"/>
<TextView
android:id="@+id/Permission"
android:layout_alignBaseline="@+id/PermissionLabel"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/FromLabelLocate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13px"
android:text="@string/fromlabel"/>
<TextView
android:id="@+id/FromLocate"
android:layout_alignBaseline="@+id/FromLabelLocate"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/ToLabelLocate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13px"
android:text="@string/tolabel"/>
<TextView
android:id="@+id/ToLocate"
android:layout_alignBaseline="@+id/ToLabelLocate"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/LastUpdateLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="13px"
android:text="@string/lastupdatelabel"/>
<TextView
android:id="@+id/LastUpdate"
android:layout_alignBaseline="@id/LastUpdateLabel"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RelativeLayout>
<View
android:layout_gravity="center_horizontal"
android:layout_width="fill_parent"
android:layout_height="1dip"
android:background="#808080"
android:layout_marginTop="5px"
android:layout_marginBottom="10px"/>
<com.google.android.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="230px"
android:clickable="true"
android:apiKey="mykey"
/>
<View
android:layout_gravity="center_horizontal"
android:layout_width="fill_parent"
android:layout_height="1dip"
android:background="#808080"
android:layout_marginTop="10px"
android:layout_marginBottom="10px"/>
<RelativeLayout
android:gravity="center_vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<Button
android:id="@+id/locate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/locate"
android:width="130px"
android:layout_marginLeft="15dip"/>
<Button
android:id="@+id/trace"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/trace"
android:width="130px"
android:layout_alignBaseline="@id/locate"
android:layout_alignParentRight="true"
android:layout_marginRight="15dip"/>
</RelativeLayout>
</LinearLayout>
</ScrollView>
J'ai besoin d'avoir la carte sur le scrollview ... – NullPointerException
@ AndroidUser99: Reconcevoir votre interface utilisateur pour que vous n'ayez pas besoin de la carte sur le 'ScrollView'. Ou bien, définissez 'android: clickable =" false "' sur MapView' afin que MapView ne puisse pas être manipulé directement par l'utilisateur - cela pourrait le permettre de fonctionner dans un 'ScrollView'. – CommonsWare