在HTML中,当表有多列可以换行的文本时,浏览器会计算最佳列宽以最小化表的高度。例如,使用以下HTML,如its fiddle中所示,第一列将比第二列略宽。究竟多少取决于字体细节。
<table width="200">
<tr>
<td>The quick brown fox jumped over the lazy lazy lazy dog</td>
<td>The lazy brown fox jumped over the dog</td>
<tr>
</table>
Android的TableLayout支持缩小列。但是,使用Xamarin.Forms Grid,这似乎是不可能的。您可以强制使用Star的比例,但根据列内容它不是动态的。将列设置为自动没有帮助;它会占用完整的可用宽度,而不会与后面的列共享该宽度。
有没有办法让Grid或任何其他控件共享列宽,以便最小化整体高度?
答案 0 :(得分:0)
遗憾的是,答案没有。 Xamarin Forms网格不是基于任何平台控件,它只是根据GridCalc.cs中自己的计算设置元素位置。
Grid仅支持Star,Auto和GridLength。
Star =以相等的部分分割屏幕
自动=匹配内容
GridLength =指定确切的高度或宽度
最佳选择可能是将第二列设置为已定义的宽度,然后第一列将缩小并随屏幕大小增长。