web-dev-qa-db-fra.com

Comment changer la taille du texte à des endroits autocompletefragment dans Android?

J'utilise le PlaceAutocompleteFragment fourni par Google dans un projet sur lequel je travaille actuellement. Mais le problème est que je dois afficher le nom de lieu que j'ai sélectionné dans le widget de saisie semi-automatique, mais le texte entier ne s'affiche pas car la taille de texte par défaut dans le widget est trop grande. Alors, est-il possible de modifier la taille du texte dans PlaceAutocompleteFragment sans créer ma propre interface de recherche personnalisée?

Mon code XML:

<Android.support.v4.widget.DrawerLayout 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:id="@+id/drawer_layout"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:fitsSystemWindows="true"
    tools:context="com.baldysns.capedbaldy.materialdesigntest.activity.DrawerMainActivity"
    tools:openDrawer="start">

    <LinearLayout
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:orientation="vertical">

        <LinearLayout
            Android:id="@+id/container_toolbar"
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:orientation="vertical">

            <Android.support.v7.widget.Toolbar xmlns:Android="http://schemas.Android.com/apk/res/Android"
                Android:id="@+id/toolbar_drawer"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:background="?attr/colorPrimary"
                Android:minHeight="?attr/actionBarSize"
                app:popupTheme="@style/AppTheme.PopupOverlay">

                <LinearLayout
                    Android:id="@+id/lnr_google_searchbar"
                    Android:layout_width="match_parent"
                    Android:layout_height="35dp"
                    Android:layout_marginTop="10dp"
                    Android:layout_marginBottom="10dp"
                    Android:background="@drawable/btn_white_notboerder">

                    <fragment
                        Android:id="@+id/place_autocompletehome_fragment"
                        Android:name="com.google.Android.gms.location.places.ui.PlaceAutocompleteFragment"
                        Android:layout_width="match_parent"
                        Android:layout_height="wrap_content" />
                </LinearLayout>
            </Android.support.v7.widget.Toolbar>
        </LinearLayout>

        <FrameLayout
            Android:id="@+id/container_body"
            Android:layout_width="match_parent"
            Android:layout_height="0dp"
            Android:layout_weight="1" />

    </LinearLayout>

    <fragment
        Android:id="@+id/fragment_navigation_drawer"
        Android:name="com.ibaax.com.ibaax.FragmentDrawer"
        Android:layout_width="300dp"
        Android:layout_height="match_parent"
        Android:layout_gravity="start"
        app:layout="@layout/fragment_drawer"
        tools:layout="@layout/fragment_drawer" /></Android.support.v4.widget.DrawerLayout>

Et une capture d'écran du problème:

 enter image description here

11
Shafayat Mamun

En utilisant une instance de fragment, vous pouvez changer la taille de la police et tout ce que vous voulez avec la boîte de recherche EditText .. voici comment procéder. 

// placeAutocompleteFragment - is my PlaceAutocompleteFragment instance
((EditText)placeAutocompleteFragment.getView().findViewById(R.id.place_autocomplete_search_input)).setTextSize(10.0f);
31
Bharatesh

Le plus simple

 ((EditText)findViewById(R.id.place_autocomplete_search_input)).setTextSize(10.0f);

dans le cas de skadosh answer, vous devez d'abord obtenir une instance de fragment. 

2
Muhammad Adil

Votre capture d’écran montre que vous définissez les marges ou les marges à l’icône de recherche et à l’icône d’annulation. supprimez-le afin qu'il laisse plus d'espace pour l'affichage du texte.

Vous pouvez également utiliser autofittextview bibliothèque ( https://github.com/grantland/Android-autofittextview ) pour modifier la taille du texte en fonction de la taille d'affichage du texte.

0
iTag