0

我为一行列表视图创建了一个 xml。它只有一个 Textview。

<?xml version="1.0" encoding="utf-8"?>
<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="14sp"
    android:textColor="@color/white"
    android:text="A">
</TextView>

我需要以编程方式确定这个 textview 的高度。如果我编码 textview.getTextSize(): 这只是返回文本的大小。

编辑:

我想在屏幕上呈现之前检索 textview 的高度。我的意思是,我想夸大这个:

LayoutInflater inflater=LayoutInflater.from(this);
View view=inflater.inflate(R.layout.row, null);
TextView row_textview=((TextView)view);

然后计算“row_textview”实例的高度。

4

4 回答 4

4

你试过了吗

textview.getHeight();

返回视图的高度。

或这个

textview.getMaxHeight();

此 TextView 的最大高度,以像素表示,如果最大高度以行数而不是使用 setLines(int)设置,则为 -1 。

于 2012-12-19T11:53:09.220 回答
2

你检查过这个这个吗?

txtview.getHeight();

返回视图的高度,以像素为单位。

或者

txtview.getLineHeight();

返回一个标准线的高度(以像素为单位)。请注意,文本中的标记可能会导致个别行高于或低于此高度,并且布局可能包含额外的第一行或最后一行填充。

于 2012-12-19T11:53:28.780 回答
0

我找不到这个问题的任何答案,所以我不接受到目前为止在这个线程上提供的任何答案。由于我试图在文本视图在屏幕上呈现之前计算它的高度,因此通过读取 xml 布局,这在 Android 中不受支持。在这种情况下,我们必须硬核高度度量,然后在运行时将此 dp 度量转换为像素。 获取 TextView 的高度 此链接对于正在为此搜索答案的其他人可能很有用。

于 2012-12-21T07:33:34.377 回答
0

试试这个来获取 textView 的高度和宽度——

 textView.getMeasuredWidth();

 textView.getMeasuredHeight();
于 2012-12-19T12:02:56.110 回答