Xamarin Forms Transalted 按钮单击
Xamarin Forms Transalted Button click
我正在使用 Xamarin Forms 创建一个圆形菜单,如下所示。
强调色是我的网格。然后我翻译并翻译按钮。
我的问题是点击按钮没有出现。我也试过我的堆栈面板的手势识别器。相同的结果。
部分代码如下:
<Grid BackgroundColor="Accent" Margin="0,0,0,10" VerticalOptions="End" HorizontalOptions="Center">
<StackLayout x:Name="cat" TranslationX="-109" TranslationY="-102"
>
<StackLayout.GestureRecognizers>
<TapGestureRecognizer Tapped="catBtn_Clicked"/>
</StackLayout.GestureRecognizers>
<Button Clicked="catBtn_Clicked" WidthRequest="60"
HeightRequest="60"
FontSize="35"
CornerRadius="30" HorizontalOptions="Center"
BackgroundColor="{StaticResource RedColor}"
TextColor="White"
Text="{ x:Static local:GrialIconsFont.Calendar }"
FontFamily="{ StaticResource IconsFontFamily }">
</Button>
<Label Text="{extensions:Translate Hello}" HorizontalOptions="Center"/>
</StackLayout>
确保您的按钮位于 superView 的边界内,
如果按钮放在 superView 的边界之外,按钮将不可点击.
你使用TranslationX="-109"
和TranslationY="-102"
会使按钮超出StackLayout的边界,所以它不会响应点击事件。您可以将 backgroundColor 添加到 stacklayout 以查看其边界。
我建议您将这些按钮或标签直接添加到网格中,并使用 absolute-layout, relative-layout 或其他布局来固定它们的位置。
Github里面也有一些例子可以参考,比如CircleButtonMenu
、Xamarin.Forms-RadialMenu
我正在使用 Xamarin Forms 创建一个圆形菜单,如下所示。
强调色是我的网格。然后我翻译并翻译按钮。
我的问题是点击按钮没有出现。我也试过我的堆栈面板的手势识别器。相同的结果。
部分代码如下:
<Grid BackgroundColor="Accent" Margin="0,0,0,10" VerticalOptions="End" HorizontalOptions="Center">
<StackLayout x:Name="cat" TranslationX="-109" TranslationY="-102"
>
<StackLayout.GestureRecognizers>
<TapGestureRecognizer Tapped="catBtn_Clicked"/>
</StackLayout.GestureRecognizers>
<Button Clicked="catBtn_Clicked" WidthRequest="60"
HeightRequest="60"
FontSize="35"
CornerRadius="30" HorizontalOptions="Center"
BackgroundColor="{StaticResource RedColor}"
TextColor="White"
Text="{ x:Static local:GrialIconsFont.Calendar }"
FontFamily="{ StaticResource IconsFontFamily }">
</Button>
<Label Text="{extensions:Translate Hello}" HorizontalOptions="Center"/>
</StackLayout>
确保您的按钮位于 superView 的边界内, 如果按钮放在 superView 的边界之外,按钮将不可点击.
你使用TranslationX="-109"
和TranslationY="-102"
会使按钮超出StackLayout的边界,所以它不会响应点击事件。您可以将 backgroundColor 添加到 stacklayout 以查看其边界。
我建议您将这些按钮或标签直接添加到网格中,并使用 absolute-layout, relative-layout 或其他布局来固定它们的位置。
Github里面也有一些例子可以参考,比如CircleButtonMenu
、Xamarin.Forms-RadialMenu