Есть ли способ изменить стиль или поведение виджета автозаполнения Google Адресов? - PullRequest
0 голосов
/ 10 апреля 2019

Поскольку средство выбора мест Google устарело, я создаю пользовательский инструмент выбора мест с помощью API мест Google.

Я хочу иметь карту с окном поиска автозаполнения в верхней части карты (в основном точно так же, как карты Google).Я знаю, что могу создать свой собственный макет с представлением автозаполнения текста, но я хочу знать, есть ли способ использовать новый виджет AutocompleteSupportFragment вместо этого.

Я реализовал AutocompleteSupportFragment, и он работает нормально, но яУ меня проблемы с его поведением и стилем.

Виджет создает кнопку в верхней части экрана (которая выглядит как панель поиска), а затем, если вы нажмете на кнопку, анимированный виджет поиска будет скользить по нижней части экрана.

То, что мне нужно, это одно из следующих действий: 1) Виджет поиска, который перемещается вверх, уже находится на экране, когда открывается действие.(поэтому без скольжения, вы можете просто нажать на панель поиска и начать печатать).Это означает, что на экране также не будет кнопки.

2) Виджет поиска отображается прямо над кнопкой.(без скольжения, просто изменение анимации, чтобы виджет "появлялся" или исчезал, или что-то поверх кнопки)

Вот мой макет для экрана карты + автозаполнение:

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:map="http://schemas.android.com/apk/res-auto"
    android:fitsSystemWindows="true"
    map:uiZoomControls="true"
    map:uiZoomGestures="true"
    map:mapType="normal"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <include layout="@layout/activity_appbar_view" 
    android:id="@+id/appBarLayout" />

    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".ui.LocationPicker.LocationPickerActivity">
        <android.support.v7.widget.CardView
            xmlns:card_view="http://schemas.android.com/apk/res-auto"
            android:id="@+id/card_view"
            android:layout_gravity="bottom|center"
            android:layout_margin="5dp"
            android:layout_width="200dp"
            android:layout_height="40dp"
            card_view:cardCornerRadius="4dp">
            <fragment
                android:id="@+id/place_autocomplete_fragment"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"



 android:name="com.google.android.libraries.places.widget.AutocompleteS upportFragment" />
            </android.support.v7.widget.CardView>
        </fragment>
    </LinearLayout>
...