#xamarin.forms
#xamarin.forms
Вопрос:
У меня есть приложение оболочки Xamarin Forms с меню гамбургера. Когда я открываю приложение, я не вижу меню гамбургера на своем iPhone (но на моем Android). Когда я куда-то перемещаюсь и возвращаюсь назад, значок гамбургера появляется, как и ожидалось. Для обработки меню гамбургера я полагаюсь на сгенерированный по умолчанию код шаблона оболочки приложения и просто добавил в меню еще несколько пунктов.
Как я могу сказать shell, чтобы мои значки меню отображались всегда?
Ссылка на проект на Github:https://github.com/NPadrutt/MoneyFox.Windows / tree / mobile-редизайн
Комментарии:
1. Какая версия XF в вашем проекте? Похоже, проблема в более старой версии.
2. Я на версии 4.8.0.1269
3. Не могли бы вы поделиться образцом, чтобы я мог протестировать его непосредственно на своей стороне?
4. Я пытаюсь создать образец, но пока не могу воспроизвести его в новом проекте. В случае, если это поможет, исходный проект с открытым исходным кодом. Я поместил ссылку в исходное сообщение.
5. Можете ли вы поделиться своим кодом навигации? Плюс ваше создание оболочки и базовая структура оболочки?
Ответ №1:
Это вызвано пользовательским средством визуализации.
в MoneyFox.iOS -> Средство визуализации-> 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);
Приведенный выше код приведет к повторной сортировке элемента на панели навигации. Что вызовет проблему. Самое простое решение — не использовать средство визуализации. В данном случае это, похоже, не имеет никакого очевидного эффекта.
//[assembly: ExportRenderer(typeof(ContentPage), typeof(CustomContentPageRenderer))]