我试图将TapGestureRecognizer
添加到Label
。
SliderAbout.GestureRecognizers.Add(new TapGestureRecognizer
{
Command = new Command(() => OpenAboutAppAsync()),
});
SliderAbout是我的Label
,它在Xaml中设置并且工作正常。
<ScrollView Grid.Row="1">
<Grid VerticalOptions="Start" HorizontalOptions="Start" Margin="20,20,0,0">
<Grid.RowDefinitions>
<RowDefinition Height="60"/>
</Grid.RowDefinitions>
<Label x:Name="SliderAbout"
Text="Über die APP"
Grid.Row="2"
TextColor="White"
FontFamily="Open Sans Light"
FontSize="Medium"/>
</Grid>
</ScrollView>
代码也会运行(我把它放在类构造函数中)
但是,当我点击标签时,方法不会触发......为什么不点火?
感谢您的帮助!
答案 0 :(得分:0)
如果您正在使用mvvm方法,则可以将手势识别器直接添加到xaml以及后面代码中的操作或视图模型中。在你的情况下,它将是这样的:
<Label x:Name="SliderAbout" Text="Über die APP" Grid.Row="2" TextColor="White" FontFamily="Open Sans Light" FontSize="Medium">
<Label.GestureRecognizers>
<TapGestureRecognizer Tapped="OnLabelTapped" />
</LabelGestureRecognizers>
</Label>
在您的代码中
private void OnLabelTapped (object sender, EventArgs e)
{
//Your code here
}