【问题标题】:Java android autosize Text in EdittextJava android在Edittext中自动调整文本大小
【发布时间】:2019-03-01 21:50:54
【问题描述】:

这是我的编辑文本:

      <EditText
                android:id="@+id/max_deep_bin"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:digits="0123456789"
                android:foregroundGravity="center"
                android:singleLine="true"
                android:gravity="center"
                android:inputType="numberDecimal"
                android:text="@string/zero"
                android:textSize="60sp"
                android:textStyle="bold" />

这个edittext必须在一行,所以我放了一个参数:android:singleLine="true"但是当一个文本太长我想改变一个textSize我该怎么做?

【问题讨论】:

  • 写入最大线数 1
  • @AravindV 它不会改变editttext中的文本大小
  • 你想改变文本大小取决于字符吗?
  • 您不能根据您的问题要求更改文字大小
  • Autosizing EditText的可能重复

标签: android


【解决方案1】:

使用editText.setTextSize(...)

参数将是一个浮点值sizeeditText 的文本大小将设置为size sp

如果您需要除 sp 以外的其他测量单位,请在 size 参数之前使用预定义的整数值 unit。你问的那些预定义值是什么?

  • COMPLEX_UNIT_DIP:设备独立像素 (DP)
  • COMPLEX_UNIT_IN : 英寸
  • COMPLEX_UNIT_MM:毫米
  • COMPLEX_UNIT_PT:点数
  • COMPLEX_UNIT_PX:原始像素
  • COMPLEX_UNIT_SP:缩放像素

例如,如果您需要文本大小为 20px,请使用

editText.setTextSize(COMPLEX_UNIT_PX, 20.0)

希望这会有所帮助..!

【讨论】:

    【解决方案2】:

    Android 引入了自动增加文本大小的选项

     <?xml version="1.0" encoding="utf-8"?>
      <TextView
          android:layout_width="match_parent"
          android:layout_height="200dp"
          android:autoSizeTextType="uniform"
          android:autoSizePresetSizes="@array/autosize_text_sizes" />
    
    
        <resources>
          <array name="autosize_text_sizes">
            <item>10sp</item>
            <item>12sp</item>
            <item>20sp</item>
            <item>40sp</item>
            <item>100sp</item>
          </array>
        </resources>
    
        I Hope this will work!
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-13
      • 1970-01-01
      • 2011-02-28
      • 1970-01-01
      • 2014-05-04
      • 1970-01-01
      相关资源
      最近更新 更多