我遇到了 Xamarin Forms 的问题,即并非所有文本都显示在标签中,并且屏幕外的元素也不会显示。旋转智能手机可以暂时解决该问题,直到重新加载数据或应用程序更新数据。这个问题在模拟器和实际的智能手机上都会发生,并且会在不同的项目中发生。
加载时显示:
改变方向时显示:
方向返回时显示:
我已经尝试使用以下方法解决问题:
Table Label.Font Size = Device.GetNamedSize(Name Size.Small, type of(Label));
Table Label.lineBreakMode = lineBreakMode.WordWrap;
Table Label.HorizontalOptions = LayoutOptions.FillAndExpand;
TableLabel.VerticalOptions = LayoutOptions.FillAndExpand;
xaml代码:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="Raspisanie.MainPage">
<ScrollView>
<StackLayout>
<StackLayout>
<Button Text="ChangingSides" Clicked="ChangingSidesClicked"/>
<StackLayout Orientation="Horizontal" HorizontalOptions="Start">
<Button Text="Previous table" Clicked="OnPreviousClicked"/>
<Button Text="Next table" Clicked="OnNextClicked"/>
</StackLayout>
</StackLayout>
<Label x:Name="TableLabel" Text="The table will be displayed here"/>
</StackLayout>
</ScrollView>
</ContentPage>
cs代码:
string responseData = await response.Content.ReadAsStringAsync();
TableLabel.Text = responseData;
cs不影响显示,因为只创建元素时会出现显示问题
这是一个使用示例:
your View.ForceLayout();