如何在没有水平滚动的情况下获得适合 editText 的符号数?
How to get count of symbols which can fit editText without horizontal scrolling?
[]
我有水平滚动的 editText。如果文本在不滚动的情况下不适合 editText,我想减小文本大小。我尝试使用以下条件:
var textSize = edtResult.textSize / resources.displayMetrics.scaledDensity
if (edtResult.width >= cardView.width && textSize > 22.0)
但 edtResult.width returns 没有滚动的宽度
所以我的问题是:
- 如何在不滚动当前 textSize 的情况下获取适合 editText 的符号数?
- 或者如何使用不适合的符号获取 editText 的宽度?
您可以尝试使用 autosize TextView 功能(如果使用 TextView
,则仅适用于 API >= 26。对于较低版本,请使用 AppCompatTextView
)。
[
我有水平滚动的 editText。如果文本在不滚动的情况下不适合 editText,我想减小文本大小。我尝试使用以下条件:
var textSize = edtResult.textSize / resources.displayMetrics.scaledDensity
if (edtResult.width >= cardView.width && textSize > 22.0)
但 edtResult.width returns 没有滚动的宽度
所以我的问题是:
- 如何在不滚动当前 textSize 的情况下获取适合 editText 的符号数?
- 或者如何使用不适合的符号获取 editText 的宽度?
您可以尝试使用 autosize TextView 功能(如果使用 TextView
,则仅适用于 API >= 26。对于较低版本,请使用 AppCompatTextView
)。