Il menu Xamarin Forms Shell Hamburger non viene visualizzato in iOS durante la prima navigazione
Ho un'applicazione shell Xamarin Forms con un menu hamburger. Quando apro l'app non riesco a vedere il menu dell'hamburger sul mio iPhone (ma sul mio Android). Quando navigo da qualche parte e torno indietro, l'icona dell'hamburger appare come previsto. Per la gestione del menu dell'hamburger mi affido al codice generato di default del modello di shell dell'app e ho appena aggiunto alcuni ulteriori elementi al menu.


Come posso dire alla shell di mostrare sempre le icone del mio menu?
Github Link al progetto:https://github.com/NPadrutt/MoneyFox.Windows/tree/mobile-redesign
Risposte
È causato dal renderer personalizzato.
in MoneyFox.iOS ->Renderer->CustomContentPageRenderer .
ToolbarList.Sort((i1, i2) =>
{
return i1.Priority > i2.Priority
? -1 : 1;
});
foreach(ToolbarItem itm in ToolbarList)
{
if(itm.Priority < 0)
LeftNavList.Add(itm.ToUIBarButtonItem());
else
RightNavList.Add(itm.ToUIBarButtonItem());
}
navigationItem.SetLeftBarButtonItems(LeftNavList.ToArray(), false);
navigationItem.SetRightBarButtonItems(RightNavList.ToArray(), false);
Il codice precedente riordinerà l'elemento su NavigationBar . Che causerà il problema. La soluzione più semplice è non utilizzare il renderer . Nel caso sembra non abbia alcun effetto evidente.
//[assembly: ExportRenderer(typeof(ContentPage), typeof(CustomContentPageRenderer))]