为TextView设置自动调整大小模式无效

时间:2019-04-08 09:36:04

标签: android

我正在像所有人一样使用Compat设置自动调整大小:

TextViewCompat.setAutoSizeTextTypeWithDefaults(this, TextViewCompat.AUTO_SIZE_TEXT_TYPE_UNIFORM)

然后我随后读取值

TextViewCompat.getAutoSizeTextType(this)

为0(没有自动调整大小),测试自然不会缩放。

我没有使用android布局(我自己设置位置和大小),但是即使我设置LayoutParams只是为了不让它们为空,也没有效果。有什么提示吗?

3 个答案:

答案 0 :(得分:0)

好吧,我只需要使用AppCompatTextView而不是TextView:/

答案 1 :(得分:0)

您可以使用两种方式在XML中或以编程方式使用。

方法1: 使用属性:

android:autoSizeTextType="uniform"  

方法2:

或使用setAutoSizeTextTypeUniformWithPresetSizes(int[] presetSizes, int unit)oncreate方法中

确保您的属性宽度为wrap_content

答案 2 :(得分:0)

    add this app:autoSizeTextType="uniform" in your TextView.
  

In XML, we can do it by adding these lines in our TextView

    app:autoSizeMaxTextSize=”100sp” 
    app:autoSizeMinTextSize=”12sp” 
    app:autoSizeStepGranularity=”2sp” 
    app:autoSizeText=”uniform”
  

或者,在Java中

    TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(TextView textview, int autoSizeMinTextSize, int autoSizeMaxTextSize, int autoSizeStepGranularity, int unit); 

    // Example
    TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(myTextView, 12, 100, 2, TypedValue.COMPLEX_UNIT_SP);