您是否在 XML 布局中使用 android:width="wrap_content" 来定义最后一列的宽度?
编辑:我想我刚刚明白,您有一个列表视图,其中包含一个表格,并且您希望列表视图的所有行对于表格的最后一行具有相同的长度。正确的?
我现在只能想到一个非常不雅的解决方案,它涉及在构建列表视图之前检查所有字符串。
一般逻辑如下:
我假设您从数组中获取所有字符串,我们将其称为数据。
建立一个全局浮点变量来表示您拥有的最长字符串,我们称之为 maxLength。
在您的布局中创建一个不可见的文本视图(让我们称之为不可见文本),您可以通过设置来做到这一点
android:visibility="gone"
然后:
int size = data.length;
maxLength = 0.0f;
for(int i = 0;i<size;i++){
invisibleText.setText(data[i]);
float thisLength = invisibleText.getTextSize();
if(thisLength>maxLength) maxLength = thisLength;
}
在您的列表视图构造函数中:
TextView text = (TextView)findViewById(R.id.the_text_view_you_want);
text.setText(data[position]);
text.setWidth(maxLength)
表格列应该使用 android:width="wrap_content" 我没有测试这段代码,但它应该可以工作,我之前做过类似的事情。