Visual Studio 2015で新しい空白のアプリ(Xamarin.Forms Portable)プロジェクトを作成し、App.csを変更して「ハンバーガーメニュー」を取得しました。
public class App : Application
{
public App()
{
var masterPage = new ContentPage()
{
Content = new Label { Text = "Hello from Master!"},
Title = "Master Page"
};
var detailPage = new ContentPage()
{
Content = new Label { Text = "Hello from Detail!" },
Title = "Detail Page"
};
var mainPage = new MasterDetailPage()
{
Master = masterPage,
Detail = detailPage,
Title = "Main Page"
};
// The root page of your application
MainPage = mainPage;
}
. . .
}
すべて正常に動作しますが、次の4つをカスタマイズするにはどうすればよいですか。
1)矢印を非表示/変更する
2)アイコンの非表示/変更
3)タイトルテキストを非表示/変更する
4)ツールバー全体を非表示にする
DetailPage
内でNavigationPage
を使用する場合は、矢印をハンバーガーアイコンに変更できます。
_Detail = new NavigationPage(detailPage);
_
アイコンを変更するには、プロジェクトファイルを変更するだけです。
または、MasterDetailPage
でIcon
プロパティを別のリソースに設定します。
アイコンを非表示にする場合は、Androidにのみ適用されます。カスタムレンダラーで解決できます( http://developer.xamarin.com/guides/cross-platform/xamarin-forms/custom-renderer/ ):
_public class CustomNavigationRenderer : NavigationRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<NavigationPage> e)
{
base.OnElementChanged (e);
var actionBar = ((Activity)Context).ActionBar;
actionBar.SetIcon (Resource.Color.transparent);
}
}
_
EDIT:MainActivity.csでも実行できます:
_ActionBar.SetIcon (new ColorDrawable(Resources.GetColor (Android.Resource.Color.Transparent)));
_
Title
でPage
プロパティを使用するだけです。
SetHasNavigationBar(page, false);