Пусть изображение занимает только оставшееся пространство

Я хочу, чтобы изображение занимало оставшееся пространство в StackLayout, однако каким-то образом это кажется невозможным в XAML. Изображение всегда пытается отобразить себя с максимальным доступным размером.

<stacklayout>
 
 <stacklayout orientation="Vertical" horizontaloptions="Fill" verticaloptions="EndAndExpand">
 <button horizontaloptions="FillAndExpand" verticaloptions="End" x:name="_ButtonShare" text="Share">
 </button></stacklayout></stacklayout><button horizontaloptions="FillAndExpand" verticaloptions="End" x:name="_ButtonExternalLinks" text="External links"><code>
 
</code>
<p>Я попробовал разные Vertical- и HorizontalOptions для этого, но вторая кнопка всегда вытесняется из представления. Использование определенной высоты также не лучшее решение.</p>
<p>Кажется, что это возможно с относительной компоновкой, но это означает, что я привязан к относительным значениям, что не очень хорошо, если я нацелен на разные устройства (например, iPhone4S и iPhone5).</p>
<pre class="prettyprint linenums"><relativelayout>
 
 <stacklayout orientation="Vertical" relativelayout.yconstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.8}" relativelayout.widthconstraint="{ConstraintExpression Type=RelativeToParent, Property=Width, Factor=1}" relativelayout.heightconstraint="{ConstraintExpression Type=RelativeToParent, Property=Height, Factor=0.2}">
 </stacklayout></relativelayout>
1 ответ

Я думаю, что вы ищете Grid.

<grid>
 <grid.columndefinitions>
 <columndefinition width="1*">
 <columndefinition width="1*">
 </columndefinition></columndefinition></grid.columndefinitions>
 <grid.rowdefinitions>
 <rowdefinition height="*">
 <rowdefinition height="auto">
 </rowdefinition></rowdefinition></grid.rowdefinitions>
 
 <button grid.row="1" grid.column="0" horizontaloptions="FillAndExpand" verticaloptions="End" x:name="_ButtonShare" text="Share">
 </button></grid><button grid.row="1" grid.column="1" horizontaloptions="FillAndExpand" verticaloptions="End" x:name="_ButtonExternalLinks" text="External links"><code>
  
</code></button>

licensed under cc by-sa 3.0 with attribution.