为什么不使用NavigationPage.SetBackButtonTitle?

时间:2018-10-15 02:08:36

标签: xamarin.forms xamarin.ios

我的xamarin.forms项目中有三个页面( A,B,C )。我需要 A 按下 B B 按下 C ,当 B 按下 C 时,我要设置 C 页面Back Button的标题为其他标题。我使用的方法是:

CPage cpage = new CPage();
NavicationPage.SetHasBackButton(cpage,true);
NavicationPage.SetBackButtonTitle(cpage,"A Page");
Navication.PushAsync(cpage);

但是C页面的BackButton'标题也是“ B页面”。为什么?

B Page View

C Page View

2 个答案:

答案 0 :(得分:1)

SetBackButtonTitle方法有点不直观。如果要为 C Page 设置标题,则必须在 B Page (上一页)

上调用SetBackButton标题。

B Page 构造函数中,在InitializeComponent之后,调用SetBackButtonTitle

public BPage()
{
    InitializeComponent();
    SetBackButtonTitle(this, "Back Title");
}

并按常规方式按 C页

 Navigation.PushAsync(cpage);

这意味着,从 B页面推送的任何页面的后退按钮都将为“ 后退标题

答案 1 :(得分:-1)

iOS 更改标题,其他页面使用的标题或标题与类名相同。尝试更改页面的标题,这对我有用。