我在Xamarin Forms应用程序中有一个xaml用户注册页面,我希望用户接受使用条款和条件 . 我在水平stacklayout中使用了两个标签,这样我就可以使“条款和条件”可以导航到条款和条件页面 . 它在iPhone 6及以上版本看起来很好:
但在5s它包装如下:
控件的xaml:
<StackLayout Grid.Row="8" Grid.Column="0" Grid.ColumnSpan="2" Orientation="Horizontal" Padding="0,0,0,5">
<Label Text="I agree to the" VerticalOptions="Center" HorizontalOptions="Start" />
<Label Text="terms and conditions" VerticalOptions="Center" HorizontalOptions="Start" LineBreakMode="WordWrap" >
<Label.TextColor>
<OnPlatform x:TypeArguments="Color"
iOS="#0076fa"
Android="#3d5afe" />
</Label.TextColor>
<Label.GestureRecognizers>
<TapGestureRecognizer Command="{Binding TermsCommand}" />
</Label.GestureRecognizers>
</Label>
<Switch IsToggled="{Binding Agree}" HeightRequest="30" WidthRequest="50" HorizontalOptions="Start" VerticalOptions="Center" />
</StackLayout>
反正有格式化所有文本作为单句包装吗?
1 回答
我建议你创建一个自定义标签控件来处理这个!在Pieter Nijs的博客上有一个非常好的起点https://blog.pieeatingninjas.be/2017/11/05/creating-a-hyperlinklabel-in-xamarin-forms/,看起来就足以满足您的需求 .
简而言之,他创建了一个标签控件,接受要在屏幕上显示的标记文本,这意味着您可以只为文本的一部分提供超链接!
从技术上讲,它会将每个平台上的文本转换为可以处理超链接的控件 .