有没有办法在android中计算字符串高度/重量?

时间:2017-04-24 12:31:29

标签: android string android-layout android-layout-weight

我使用3个部分创建屏幕,这些部分用weightSum

分开
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight=".....my choose"

现在,我成功通过更改布局参数来动态更改除法。我的问题是我的第一部分包含textView,其中包含我不知道他的长度的字符串(每次都改变它)。它可能很短或很长,所以对于正常情况一切都还可以,但如果字符串很长,我想给第一部分更多的重量'从屏幕上我希望它与字符串的长度相关..

问题是我是否能够以某种方式知道'身高'一个字符串,并从那里计算字符串需要多少重量?然后我可以再次改变分裂,或者可能还有另一种替代我的情况?

全部谢谢!

2 个答案:

答案 0 :(得分:0)

更好地使用算法来查找字符串的长度,一旦找到长度,然后以编程方式更改文本大小或权重。

答案 1 :(得分:0)

这是一种黑客行为。您可以使用getWidth的{​​{1}} TextView以及该宽度的基础,指定String

例如,如果您的weightTextView

yourTextView

注意

如果您无法立即找到宽度,则可以使用yourTextView.setText(yourString); int width = yourTextView.getWidth; if(width > THRESHOLD) setWeight(YOUR_VALUE) else setWeight(YOUR_VALUE) ,因为设置文本需要一段时间。

Handler