xamarin在网格列上形成拉伸按钮

时间:2017-12-11 15:27:22

标签: android ios xaml xamarin xamarin.forms

我希望没有空格并排按钮。

我用网格试了一下,但是我找不到怎么做。

这是我的代码:

grid

感谢您的帮助。

更新:

结果是这样但是,但是我想填写蓝色背景不可见。我想删除这两个按钮之间的空格。

enter image description here

4 个答案:

答案 0 :(得分:1)

通过编码你可以做这样的事情。

new StackLayout
    {
        Spacing = 0,
        Orientation = StackOrientation.Horizontal,
        Children = 
        {
            new Button
            {
                Text = "Ja",
            },
            new Button
            {
                Text = "Nein",

            },

        }
    } 

答案 1 :(得分:1)

网格的边距应设置为0,这样效果很好...

答案 2 :(得分:0)

您也可以通过设置margin参数减去

来解决它

试试这个,

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         xmlns:local="clr-namespace:VideoApp"
         x:Class="VideoApp.CallHistoryPage">
<StackLayout VerticalOptions="End" Spacing="0" Padding="0">

    <Label Text="Hello " FontSize="Medium"/>
    <Label FontSize="Small">This sould be a text?</Label>
    <BoxView HeightRequest="1" BackgroundColor="#6fcd11" 
 HorizontalOptions="FillAndExpand" />
    <Grid Padding="0" ColumnSpacing="0" RowSpacing="0" 
BackgroundColor="Aqua">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"></RowDefinition>
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions >
            <ColumnDefinition Width="*"></ColumnDefinition>
            <ColumnDefinition Width="*"></ColumnDefinition>
        </Grid.ColumnDefinitions>

        <Button Grid.Row="0" Grid.Column="0" Margin="-5,-7,-5,-6" Text="Ja">
</Button>
        <Button Grid.Row="0" Grid.Column="1" Margin="-5,-7,-5,-6" 
Text="Nein"></Button>

      </Grid>

   </StackLayout>
</ContentPage>

Output:

横向模式:

enter image description here

答案 3 :(得分:0)

这可能是由于您正在渲染的实际底层按钮。 Android中有2个按钮,您可以在CustomRenderer

中继承
public class YourButton_Droid : Xamarin.Forms.Platform.Android.AppCompat.ButtonRenderer 

public class YourButton_Droid : Xamarin.Forms.Platform.Android.ButtonRenderer

我想现在,您的应用正在渲染AppCompat.ButtonRenderer。 它有一个内置的阴影,可以在你的情况下创建边距。使用Android.ButtonRenderer会让您丢失按钮上的Material Design(触摸响应,阴影等),但边距也可能会消失。

如果深入研究Android按钮世界,您也可以使用AppCompat,通过自定义渲染器代码删除边距。

祝你好运!