如何更改AutoTextSize(最大和最小)

时间:2018-04-29 21:54:39

标签: java android

如何在Android Studio中通过java代码更改AutoTextSize(Maximum& Minimum)。

    TextView versesText;
    versesText = findViewById(R.id.VersesArabicTashkeel);
    versesText.setAutoSizeTextTypeUniformWithConfiguration(5, 25 ,1,1);
    //versesText.setAutoSizeTextTypeUniformWithConfiguration(5, 25 ,0,0);

我想将Max设置为25,将Min设置为5,而在其他代码中,我需要将max设置为20,将min更改为5

app崩溃了以前的代码

1 个答案:

答案 0 :(得分:1)

您使用versesText.setAutoSizeTextTypeUniformWithConfiguration(5, 25, 1, 1);的这段代码完全错误。请参阅官方documentation以正确使用它。文件明确指出:

  

通过支持库以编程方式定义一系列文本大小和维度,调用TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(int autoSizeMinTextSize, int autoSizeMaxTextSize, int autoSizeStepGranularity, int unit)方法。提供最大值,最小值,粒度值和任何TypedValue维度单位。

所以,你应该使用类似下面的内容:

TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(5, 25, 1, 1);

此外,如果您尚未包含以下内容,请检查以下内容:

  

支持库26.0完全支持在Android 8.0(API级别26)之前运行Android版本的设备上自动调整大小TextView功能。

由于支持库26现已转移到Google的maven存储库, 在项目级build.gradle中包含此内容:

buildscript {

   repositories {
       google()
   }
   ....
}

并在您的应用级build.gradle中添加支持库:

dependencies {
   ....
   implementation 'com.android.support:support-v4:26.0.2'

}