如何在 Xamarin 中调整按钮的大小
Posted
技术标签:
【中文标题】如何在 Xamarin 中调整按钮的大小【英文标题】:How to resize a button in Xamarin 【发布时间】:2016-09-29 12:01:50 【问题描述】:我正在使用 Xamarin.Forms。我试过这段代码,但没有奏效;如何调整按钮的大小?
<ContentView.Content>
<StackLayout>
<Button Text="1" WidthRequest="50"></Button>
<Button Text="2" WidthRequest="50"></Button>
</StackLayout>
</ContentView.Content>
谢谢。
【问题讨论】:
【参考方案1】:<StackLayout >
<Button Text="1" WidthRequest="50"
HorizontalOptions="Center"></Button>
<Button Text="2" WidthRequest="50"
HorizontalOptions="Center"></Button>
</StackLayout>
【讨论】:
在我的情况下,我有HorizontalOptions="Fill"
并在我的代码隐藏文件中设置 WidthRequest 属性没有任何效果。我将它设置为中心(或开始或结束)并且它起作用了。【参考方案2】:
<StackLayout>
<!--I am wider but shorter-->
<Button Text="1" WidthRequest="100" HeightRequest="50"></Button>
<!--I am narrower but longer-->
<Button Text="2" WidthRequest="50" HeightRequest="100"></Button>
<!--I fill the whole width. See also VerticalOptions-->
<Button Text="3" HorizontalOptions="FillAndExpand"></Button>
</StackLayout>
【讨论】:
【参考方案3】:您可以使用 HorizontalOptions 属性使宽度或高度尽可能大以包含其中的元素。
<Button HorizontalOptions="Center" Text="Retry" />
【讨论】:
【参考方案4】:只需调整父视图的大小,例如,如果它在 StackLayout 中,它将与父视图大小相同。
<Grid HeightRequest="120" WidthRequest="120" HorizontalOptions="Center">
<Button Text="Hello!" BackgroundColor="Red"/>
</Grid>
它将显示为 120 x 120,
因为,Button 的 Default HorizontalOptions 是 Fill,VerticalOptions 是 Start。但是某些控件(例如按钮)会忽略高度或宽度请求,并且更喜欢填充父级。同一布局效果按钮中的其他元素。只需调整按钮的父级大小并离开它。
【讨论】:
【参考方案5】:你能试试下面提到的方法吗:
<StackPanel>
<Button Content = "Button1" Height = "30" Width = "80" Foreground = "Blue" FontSize = "12" Margin = "10"/>
<Button Content = "Button2" Height = "30" Width = "80" Foreground = "Blue" FontSize = "12" Margin = "10"/>
<Button Content = "Button3" Height = "30" Width = "80" Foreground = "Blue" FontSize = "12" Margin = "10"/>
</StackPanel>
【讨论】:
测试你的代码。在 Xamarin Forms 中,您需要设置HeightRequest
和 WidthRequest
。尝试设置 Height
和 Width
将无法编译:这些是只读属性。以上是关于如何在 Xamarin 中调整按钮的大小的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Xamarin ios 中获取导航栏后退按钮的大小?
如何Xamarin.Forms调整水平的ListView的大小