我有一个StackLayout,它包含一个TableView,一个Grid和一些标签。
我的问题是StackLayout强制所有元素覆盖屏幕高度的100%,并且它在我的TableView上生成垂直滚动:
我想删除控件中的垂直滚动,而不是整个视图的“全局”滚动。
这是该视图的XAML代码:
<?xml version="1.0" encoding="UTF-8"?>
<ContentPage Title="Create Account"
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:AudioBitts"
x:Class="AudioBitts.SignUpPage">
<StackLayout>
<TableView x:Name="socialListView">
<TableRoot>
<TableSection Title="Social sign up">
<ImageCell ImageSource="{local:EmbeddedImage ResourceId=AudioBitts.Images.Icons.socialFacebook@3x.png}" Text="Sign up with Facebook" />
<ImageCell ImageSource="{local:EmbeddedImage ResourceId=AudioBitts.Images.Icons.socialTwitter@3x.png}" Text="Sign up with Twitter" />
<ImageCell ImageSource="{local:EmbeddedImage ResourceId=AudioBitts.Images.Icons.socialGoogle@3x.png}" Text="Sign up with Google+" />
</TableSection>
<TableSection Title="Email sign up">
<EntryCell Label="Email" Placeholder="Your email"/>
<EntryCell Label="Password" Placeholder="Min 6 characters"/>
</TableSection>
</TableRoot>
</TableView>
<Grid Padding="20" HorizontalOptions="Center" VerticalOptions="Center">
<Grid.RowDefinitions>
<RowDefinition Height="40" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Label Grid.Row="0" Grid.Column="0" Text="Already have an account?" />
<Label x:Name="onSignIn" Grid.Row="0" Grid.Column="1" Text="Sign In" TextColor="#ff0030" />
</Grid>
<Label Text="AudioBitts Inc." HorizontalOptions="Center" />
<Label Text="Terms of Use and Privacy Policy" HorizontalOptions="Center" />
</StackLayout>
</ContentPage>
答案 0 :(得分:1)
为什么不添加其他<TableSection/>
,添加<ViewCell/>
并添加Grid
内的内容。
希望它有所帮助!