【问题标题】:How to resize a button in Xamarin如何在 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>

谢谢。

【问题讨论】:

    标签: xaml mobile xamarin xamarin.forms


    【解决方案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】:

      您可以使用 Horizo​​ntalOptions 属性使宽度或高度尽可能大以包含其中的元素。

      <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 Horizo​​ntalOptions 是 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 中,您需要设置 HeightRequestWidthRequest。尝试设置 HeightWidth 将无法编译:这些是只读属性。
          猜你喜欢
          • 1970-01-01
          • 2021-11-03
          • 2011-05-30
          • 1970-01-01
          • 2013-02-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-10-21
          相关资源
          最近更新 更多