この問題が発生し、解決する方法がわかりません。 基本的には、Navigation.PushAsync(tabbedPage)から呼び出すときに、TabLayoutのmainTitleの色を変更したいと思います。簡単ですが、そうではありません。 そのトップバーのプロパティを変更することはわかりません。 "BarTextColorProperty"という名前のNavigationPageクラスに、プロパティがあります。これで何ができますか?TabbedPage MainTitleの色を、Navigation.PushAsync(tabbedPage)で開いたときに変更します。
私は、同じサンプルをテストしたが、別の方法で... Navigation.PushModalAsync(tabbedPage)、この時間は、モーダルページでは、と働いた:)
をしかし、私は本当にこの仕事を必要としていましたNavigation.PushAsync(tabbedPage)(backButtonのため)。
コードを見るとNavigation.PushModalAsync(tabbedPage)、tabbedPageがNavigationBar内にあり、Worksであることがわかりますが、TabbedPageをNavigationPage内に配置しようとします(PushAsyncメソッド;)、Xamarinは3つのバーを描きます...最初のバーには戻るボタンしかありません。
誰かが助けることができますか? もっとコードが必要な場合は
コード: - > Navigation.PushAsync(tabbedPage);ダブルによって、応答後半はあなたの説明とあなたのコードをチェックするために
[button1.Clicked += (s, e) =>
{
tabbedPage.CurrentPageChanged += (a, b) =>
{
if (tabbedPage.CurrentPage.GetType().Equals(typeof(Page1)))
{
tabbedPage.BarTextColor = Color.Green;
}
else
{
tabbedPage.BarTextColor = Color.Orange;
}
};
Navigation.PushAsync(tabbedPage);
};
-> Navigation.PushModalAsync(tabbedPage),
button2.Clicked += (s, e) =>
{
NavigationPage navigationPageTabbedPage = new NavigationPage(tabbedPage);
tabbedPage.CurrentPageChanged += (a, b) =>
{
if (tabbedPage.CurrentPage.GetType().Equals(typeof(Page1)))
{
navigationPageTabbedPage.BarTextColor = Color.Green;
}
else
{
navigationPageTabbedPage.BarTextColor = Color.Orange;
}
};
Navigation.PushModalAsync(navigationPageTabbedPage);
};][1]
LINKのIMAGES:https://wetransfer.com/downloads/97909b77b14d7b352a973be5f4689bc520170925231433/7797ef –
申し訳ありませんが、それは 'NavigationPage'とは何でしょうか?バーアイテムが選択されたときに 'TabbedPage'のバーのテキストカラーを変更したいですか? –
返信ありがとうございます:)...だから、ユーザー変更タブ(CurrentPageChangedイベント)のときにTabbedPageのトップバータイトルの色を変更したいと思います...たとえば、tab1が選択されている場合、tab2が選択されている場合、タイトルはオレンジです..私は、TabbedPageが "Navigation.PushAsyncメソッド"で開いていて、うまくいかなかったときにそれをやろうとします...(button1) "Navigation.PushModalAsyncメソッド"で開くと、それが機能しました...(button2 )、私はバックボタンが必要なのでNavigation.PushModalAsyncでこれを開きたくない... Navigation.PushAsyncでこれをやり、Navigation.PushModalAsyncと同じ結果を得る方法は? –