Auto Scale TextView Text to Fit within Bounds

后端 未结 30 2820
囚心锁ツ
囚心锁ツ 2020-11-21 05:49

I\'m looking for an optimal way to resize wrapping text in a TextView so that it will fit within its getHeight and getWidth bounds. I\'m not simply looking for

30条回答
  •  说谎
    说谎 (楼主)
    2020-11-21 05:57

    From June 2018 Android officially started supporting this feature for Android 4.0 (API level 14) and higher.
    Check it out at: Autosizing TextViews

    With Android 8.0 (API level 26) and higher:

    
    
    

    Programmatically:

    setAutoSizeTextTypeUniformWithConfiguration(int autoSizeMinTextSize, int autoSizeMaxTextSize, 
            int autoSizeStepGranularity, int unit)
    
    textView.setAutoSizeTextTypeUniformWithConfiguration(
                    1, 17, 1, TypedValue.COMPLEX_UNIT_DIP);
    


    Android versions prior to Android 8.0 (API level 26):

    
    
    
      
    
    
    

    Programmatically:

    TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(
    TextView textView, int autoSizeMinTextSize, int autoSizeMaxTextSize, int autoSizeStepGranularity, int unit) 
    
    TextViewCompat.setAutoSizeTextTypeUniformWithConfiguration(textView, 1, 17, 1,
    TypedValue.COMPLEX_UNIT_DIP);
    

    Attention: TextView must have layout_width="match_parent" or absolute size!

提交回复
热议问题