Я пытаюсь отобразить панель инструментов Android со значком гамбургера.Я использую код:
_buildToolbar (msg) {
const navIcon = require("../../icons/menu.png");
return (
<ToolbarAndroid
title={msg}
style={{
height: 56,
alignSelf: "stretch",
}}
onIconClicked={this.props.openDrawer}
navIcon={navIcon}
/>);
}
Панель инструментов отображается, а значок навигации - нет.Я получаю предупреждение Failed prop type: Invalid prop navIcon supplied to ToolbarAndroid
.Файл существует, и поиск под отладчиком определен navIcon.Ищу любую помощь здесь.Использование панели инструментов на основе значков, вероятно, нереализуемое решение, поскольку из-за некоторых наших функций настройки получить правильный шрифт может быть затруднено.
Редактировать:
Изменение на:
<ToolbarAndroid
title={msg}
style={{
height: 56,
alignSelf: "stretch",
}}
onIconClicked={this.props.openDrawer}
navIcon={
{ uri: navIcon }}
/>);
Избавился от предупреждения, но не устранил проблему с отображением.
Edit2:
Похоже, что-то здесь с нашей системой сборки (которая использует тот же стек, что и наша веб-сборка)система, а не обычные инструменты RN) загружает файлы как данные другого типа - загружает их как данные.Я не уверен, что они обычно.Но когда ToolbarAndroid передается URI, он предполагает, что это будет файл, URL-адрес http / https или имя рисованного объекта в нашей папке Drawable.Похоже, нам понадобится отладить нашу систему сборки или жестко запрограммировать этот образ (который является значком гамбургера - это не конец света).