Android как по центру выровнять чипы в чипгруппе? - PullRequest
0 голосов
/ 05 июля 2018

Я попытался gravity="center", foregroundGravity="center" и textAlignment="center" для ChipGroup в файле XML, но он не будет работать. Есть идеи?

This is how it looks now

Ответы [ 6 ]

0 голосов
/ 10 июня 2019

Поместите его в LinearLayout и сделайте его гравитацию "center_horizontal". Затем установите для layout_width группы микросхем значение "wrap_content". Это сработало для меня.

    <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:gravity="center_horizontal">


                <com.google.android.material.chip.ChipGroup
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:id="@+id/langsChipGroup"
                    >

                </com.google.android.material.chip.ChipGroup>

</LinearLayout>
0 голосов
/ 20 августа 2018

Эта библиотека поможет вам выяснить ваш запрос. пожалуйста, проверьте это. и дайте мне знать ваши мысли для того же.

Библиотека ChipCloud изначально была (очень) быстро сбила представление Android для какого-то более крупного хакатон-проекта от fiskurgit. Создает упаковочное облако материала «Чипсы». Базовая демонстрация их версии доступна в магазине Play Store - я поддерживаю эту развилку для функций, которые мне в ней необходимы.

Chip Cloud View

0 голосов
/ 17 августа 2018

Я попытался использовать Chip внутри Flexbox , и это сработало так:

<com.google.android.flexbox.FlexboxLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal"
        app:flexWrap="wrap"
        app:justifyContent="center"> ... </com.google.android.flexbox.FlexboxLayout>

enter image description here

Должны быть лучшие способы для достижения этого, но, думаю, это сработает.

0 голосов
/ 26 июля 2018

Вы можете создать один родительский RelativeLayout и использовать для каждой чип-группы android:layout_centerHorizontal="true", что-то вроде этого

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <RelativeLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true">

                <TextView
                    android:id="@+id/view1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginRight="5dp"

                    android:background="@android:color/darker_gray"
                    android:text="View1" />

                <TextView
                    android:id="@+id/view2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_marginRight="5dp"
                    android:layout_toRightOf="@id/view1"
                    android:background="@android:color/darker_gray"
                    android:text="View2" />
            </RelativeLayout>
        </RelativeLayout>
0 голосов
/ 26 июля 2018

Поместите ширину группы микросхем в wrap_content и сделайте родительский вид гравитации равным center, который содержит группу микросхем. Так, чтобы он был выровнен по центру.

0 голосов
/ 06 июля 2018

Пожалуйста, попробуйте следующее:

layout_gravity="center"

Надеюсь, это поможет вам.

...