Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

TextView autoSizeTextType is not detecting in xml

I'm looking for changing the TextView Sizes automatically. And I found the solution as well. Here is the official Doc for Auto sizing textviews. But Still I'm not able to resolve it. When i paste autoSizeTextType its showing error in xml file.

Here is the my xml code and gradle code snippets

myactivity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    android:orientation="vertical">

<include layout="@layout/toolbar" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:autoSizeTextType="uniform"/>


</LinearLayout>

Gradle snippet

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:support-v4:25.2.0'//Added support library
    compile 'com.android.support:appcompat-v7:25.2.0'
    compile 'com.android.support:design:25.2.0'
    testCompile 'junit:junit:4.12'
}
like image 658
Manukumar Avatar asked Jun 07 '17 11:06

Manukumar


2 Answers

Use AppCompatTextView and supportLibrary 26.0.1

<?xml version="1.0" encoding="utf-8"?>
<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="match_parent">

    <android.support.v7.widget.AppCompatTextView
       android:layout_width="match_parent"
       android:layout_height="200dp"
       app:autoSizeTextType="uniform" />

</LinearLayout>
like image 123
Aliaksei Rak Avatar answered Oct 09 '22 23:10

Aliaksei Rak


As stated in the docs:

The Support Library 26.0 provides full support to the autosizing TextView feature on devices running Android versions prior to Android 8.0 (API level 26). The library provides support to Android 4.0 (API level 14) and higher. The android.support.v4.widget package contains the TextViewCompat class to access features in a backward-compatible fashion.

You need to replace TextView with AppCompatTextView and upgrade your support lib to v26.0.0 in order to use that feature.

compile 'com.android.support:support-v4:26.0.0'

Don't forget to upgrade your buildToolsVersion to 26.0.0 and compileSdkVersion to 26 as well.

like image 33
Joen93 Avatar answered Oct 09 '22 21:10

Joen93