TextView autoSizeTextType не работает в виджете приложения - PullRequest
0 голосов
/ 16 июня 2019

Не удается автоматически изменить размер текста TextView для работы в виджете приложения.

Авторазмер хорошо отображается в предварительном просмотре Android Studio, но он не работает на реальном виджете.

Разве autosize не должен работать в виджетах или что-то в этом роде?

Мой TextView:

<TextView
        android:text="test"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/widget_text"
        android:gravity="center"
        android:background="?android:attr/selectableItemBackgroundBorderless"
        android:clickable="true"
        android:focusable="true"
        android:textColor="#ddd"
        app:autoSizeTextType="uniform" 
        app:autoSizeMaxTextSize="200dp"
        app:autoSizeMinTextSize="12dp"/>

Ответы [ 2 ]

2 голосов
/ 16 июня 2019

Разве autosize не должен работать в виджетах или что-то в этом роде?

Ваш макет предполагает, что он надувается чем-то, что понимает эти app префиксированные атрибуты. В случае виджета приложения это не так. Система надувает макет, используя запас LayoutInflater, и ничего не знает об этих атрибутах. Причина, по которой эти атрибуты работают в AppCompatActivity, заключается в том, что он заменяет свой собственный LayoutInflater, который учитывает эти app -приставленные атрибуты.

Вы можете использовать android для них (например, android:autoSizeTextType). Тем не менее, они будут учитываться только на Android 8.0 и выше, когда в каркас был добавлен автоматический выбор размера.

Если авторазмер имеет решающее значение для работы виджета приложения, вам нужно установить minSdkVersion на 26.

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

В случае виджетов android:autoSizeTextType будет работать, но поддержка будет только с Android 8.0.

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

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