Сделайте размер вспомогательного TextView одинаковым - PullRequest
0 голосов
/ 06 декабря 2018

Я использовал autoSizing TextView в RecyclerView

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <TextView
            android:id="@+id/item_id"
            android:layout_width="0dp"
            android:layout_height="30dp"
            android:layout_weight="1"
            android:gravity="center"
            android:maxLines="1"
            app:autoSizeMaxTextSize="12sp"
            app:autoSizeMinTextSize="8sp"
            app:autoSizeTextType="uniform" />

        <TextView
            android:id="@+id/item_price"
            android:layout_width="0dp"
            android:layout_height="30dp"
            android:layout_weight="1"
            android:gravity="center"
            android:maxLines="1"
            android:paddingLeft="2dp"
            android:paddingRight="2dp"
            app:autoSizeMaxTextSize="12sp"
            app:autoSizeMinTextSize="8sp"
            app:autoSizeTextType="uniform" />
    </LinearLayout>

Размер шрифта отличается, из-за содержания

enter image description here

Iвойти размер

 Log.e("price", holder.getAdapterPosition() + "--" + price.getTextSize());

это результат

2018-12-06 18:10:24.394 31179-31179/com.sskj.moudle E/price: 0--42.0
2018-12-06 18:10:24.447 31179-31179/com.sskj.moudle E/price: 1--42.0
2018-12-06 18:10:24.480 31179-31179/com.sskj.moudle E/price: 2--42.0
2018-12-06 18:10:24.515 31179-31179/com.sskj.moudle E/price: 3--42.0
2018-12-06 18:10:24.555 31179-31179/com.sskj.moudle E/price: 4--42.0

Поскольку вы видите, что размеры разные, я хочу знать, как сделать эти размеры одинаковыми?Спасибо!

1 Ответ

0 голосов
/ 06 декабря 2018

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

Один из способов справиться с этим сценарием - установить максимальную длину (android:maxLength=SIZE) из TextView, чтобы заполнить текст пустыми пробелами для более мелкого текста и показать эллипсы для более длинного текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...