Xamarin สร้าง Center NavigationPage title
Sep 30 2020
ฉันมีปัญหา. ฉันใช้ Navigation.PushAsync () ดังนั้นในหน้าที่สองของฉันฉันมีลูกศรย้อนกลับใน NavigationBar ตอนนี้ฉันต้องการเพิ่ม titleview ด้วยตรงกลางของ NavigationBar แต่มันไม่ได้อยู่ตรงกลางตรงกลาง แต่จะไปทางขวามากกว่าเพราะปุ่มย้อนกลับ
ฉันได้ลองตั้งค่าใน AbsoluteLayout แล้วดังนี้:
<NavigationPage.TitleView>
<AbsoluteLayout>
<Label Text="MyTitle" FontSize="20" AbsoluteLayout.LayoutBounds="0.5, 0.5" AbsoluteLayout.LayoutFlags="PositionProportional" />
</AbsoluteLayout>
</NavigationPage.TitleView>
แต่ยังคงผลลัพธ์เหมือนเดิม :(
ฉันจะแก้ไขปัญหานี้ได้อย่างไร?
คำตอบ
ShubhamTyagi Sep 30 2020 at 20:06
ถอดปุ่มย้อนกลับ
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
NavigationPage.HasBackButton="False">
เพิ่มรูปภาพที่กำหนดเองและใช้ TapGesture (หรือคุณสามารถใช้ FontAwesome หรืออะไรก็ได้)
<AbsoluteLayout>
<Image AbsoluteLayout.LayoutBounds="0, 0.5" AbsoluteLayout.LayoutFlags="PositionProportional" WidthRequest="20" HeightRequest="20"
Source="arrow16">
<Image.GestureRecognizers>
<TapGestureRecognizer Tapped="TapGestureRecognizer_Tapped"/>
</Image.GestureRecognizers>
</Image>
<Label Text="MyTitle" FontSize="20" AbsoluteLayout.LayoutBounds="0.5, 0.5" AbsoluteLayout.LayoutFlags="PositionProportional" />
</AbsoluteLayout>
เมื่อแตะเหตุการณ์เปิดหน้า
private async void TapGestureRecognizer_Tapped(object sender, EventArgs e)
{
await Navigation.PopAsync();
}