2015-06-12 7 views
2

Я ищу, чтобы установить BackgroundImage в NavBar в приложении NavigationPage Xamarin.Forms, но я не могу найти ответ. Доза, кто-нибудь знает, как это сделать? Я могу изменить свойство Color, но мне нужен логотип компании в верхнем баре.Как установить обратное изображение на панель навигации в форматах Xamarin

ответ

2

Поскольку не поддерживаются рамками Xamarin.Forms, вам нужно создать пользовательский визуализатор для Панели навигации (класс для визуализации является, насколько я понимаю, NavigationRenderer или NavigationPageRenderer).

Затем в классе рендеринга в android добавьте изображение с возможностью рисования и в iOS UIImage в верхнюю панель.

Редактировать - я подумал о другом решении - без использования пользовательских штукатурок, вы можете добиться этого путем удаления существующей панели, установив на каждой странице этой команды:

NavigationPage.SetHasNavigationBar(this, false)

и создание пользовательская панель навигации, которая завернута в сетку, должна выглядеть примерно так:

<Grid> 
    <Image Source="BackgroundImage.png"/> <!-- This should fill the grid --> 
    <Image Source="back_button" HorizontalOptions="StartAndExpand" Aspect="AspectFit" > 
     <Image.GestureRecognizers> 
     <TapGestureRecognizer Command="{Binding NavigateBackCommand}"/> 
     </Image.GestureRecognizers> 
    </Image> 
</Grid> 
+0

Thanks Ido, вы знаете, на каком-либо образце кода, который это делает? –

+0

Вы можете попробовать эту ссылку: http://www.morganskinner.com/2015/01/xamarin-formsusing-background-images-on.html – IdoT

+0

Еще раз спасибо, я попытаюсь реализовать ваш код и обновит –

Смежные вопросы