我可以将MapActivity放入Scrollview吗?

问题描述 投票:0回答:1

我正在尝试在MapActivity页面中使用ScrollView。当我运行该应用进行测试时,无法正确单击该地图,因为当用户尝试在地图上滑动时,滚动视图将接管,并且有点难以在其上滑动。

这是它的外观(地图包含在最底部):

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".CreateAds.FurnitureAd.CreateFunP1Fragment">

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/lll"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:layout_marginLeft="16dp"
            android:layout_marginTop="8dp"
            android:layout_marginEnd="16dp"
            android:layout_marginRight="16dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent">

            <EditText
                android:id="@+id/editText"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:ems="10"
                android:hint="@string/ad_title"
                android:inputType="textPersonName"
                android:textColor="@color/colorPrimary"
                tools:layout_editor_absoluteX="182dp"
                tools:layout_editor_absoluteY="16dp"
                android:importantForAutofill="no" />
        </com.google.android.material.textfield.TextInputLayout>

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/rrr"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="@+id/lll"
            app:layout_constraintStart_toStartOf="@+id/lll"
            app:layout_constraintTop_toBottomOf="@+id/lll">

            <EditText
                android:id="@+id/editText2"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:ems="10"
                android:hint="@string/offer_price"
                android:inputType="number"
                android:textColor="@color/colorPrimary"
                android:importantForAutofill="no" />
        </com.google.android.material.textfield.TextInputLayout>

        <TextView
            android:id="@+id/textView16"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:text="@string/currency"
            android:textColor="@color/colorPrimary"
            app:layout_constraintStart_toStartOf="@+id/spinner2"
            app:layout_constraintTop_toBottomOf="@+id/rrr" />

        <Spinner
            android:id="@+id/spinner2"
            style="@style/Widget.AppCompat.Spinner.Underlined"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="@+id/rrr"
            app:layout_constraintHorizontal_bias="0.0"
            app:layout_constraintStart_toStartOf="@+id/rrr"
            app:layout_constraintTop_toBottomOf="@+id/textView16" />

        <TextView
            android:id="@+id/textView18"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:text="@string/state"
            android:textColor="@color/colorPrimary"
            app:layout_constraintStart_toStartOf="@+id/spinner2"
            app:layout_constraintTop_toBottomOf="@+id/spinner2" />

        <Spinner
            android:id="@+id/spinner3"
            style="@style/Widget.AppCompat.Spinner.Underlined"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="@+id/spinner2"
            app:layout_constraintStart_toStartOf="@+id/spinner2"
            app:layout_constraintTop_toBottomOf="@+id/textView18" />

        <TextView
            android:id="@+id/textView20"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:text="@string/city"
            android:textColor="@color/colorPrimary"
            app:layout_constraintStart_toStartOf="@+id/spinner3"
            app:layout_constraintTop_toBottomOf="@+id/spinner3" />

        <Spinner
            android:id="@+id/spinner4"
            style="@style/Widget.AppCompat.Spinner.Underlined"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="@+id/spinner3"
            app:layout_constraintStart_toStartOf="@+id/spinner3"
            app:layout_constraintTop_toBottomOf="@+id/textView20" />

        <com.google.android.material.textfield.TextInputLayout
            android:id="@+id/textInputLayout"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            app:layout_constraintEnd_toEndOf="@+id/spinner4"
            app:layout_constraintStart_toStartOf="@+id/spinner4"
            app:layout_constraintTop_toBottomOf="@+id/spinner4">

            <EditText
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:hint="@string/location"
                android:inputType="text"
                android:importantForAutofill="no" />

        </com.google.android.material.textfield.TextInputLayout>

        <TextView
            android:id="@+id/textView24"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:text="@string/map"
            android:textColor="@color/colorPrimary"
            app:layout_constraintStart_toStartOf="@+id/textInputLayout"
            app:layout_constraintTop_toBottomOf="@+id/textInputLayout" />

        <include
            layout="@layout/activity_maps"
            android:layout_width="0dp"
            android:layout_height="450dp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toBottomOf="@+id/textView24" />

    </androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>

是否像这样实施错误?

android android-mapview android-scrollview
1个回答
0
投票

当您希望地图成为活动的主要内容且几乎是唯一内容时,将使用地图活动。请改用MapFragment。示例:

<fragment
    android:id="@+id/map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:name="com.google.android.gms.maps.SupportMapFragment"/>
© www.soinside.com 2019 - 2024. All rights reserved.