Ich bin in der Lage, statische Bilder zu einer Zelle ListView
ganz gut hinzufügen (siehe Code unten), aber wie ändere ich das Symbol Bild dynamisch?Wie kann ich Bilder in "Reactive Native Component" bedingt einfügen?
<Image source={require('./img/check.png')} />
ist der empfohlene Weg, Bilddateien für beide iOS und Android zu verweisen.
Ich habe eine Komponente namens ExpandingCell
, die die Option hat, eine Reihe von verschiedenen Symbolen zu zeigen, aber alles andere bleibt gleich.
In einem ListView
schaffe ich eine cell
Objekt und es dann in die ExpandingCell
passieren
das Listview Datenquellen-Array wie folgt aussieht zu machen:
var LIST_DATA = [
...
{type: 'ExpandingCell',
icon: './CellIcons/MagnifyingGlassIcon.png', //unused
title: 'Lorem Ipsum',
detail: 'Donec id elit non mi porta gravida at eget metus.'},
...
];
dann in renderCell
Methode sie die oben geben wird Zellobjekt:
renderCell(cell) {
if (cell.type === 'ExpandingCell') {
return (
<ExpandingCell cell={cell} />
);
}
}
Jetzt in ExpandingCell
ich habe dies für render()
:
render() {
return (
...
<Image source{
require('./CellIcons/MagnifyingGlassIcon.png')
}>
</Image>
...
);
}
Allerdings, wenn ich versuchen, Verwendung von this.props.cell.icon
wie diese zu machen:
<Image source={require(this.props.cell.icon)}></Image>
ich die folgende Fehlermeldung erhalten: Requiring unknown module "./CellIcons/MagnifyingGlassIcon.png".
Vielen Dank im Voraus =)
Ich lese meine Dokumente sorgfältiger durch, und ich denke, ich habe zu viel von den STATISCHEN Bildern verlangt, haha. Ich mag die "const" -Lösung, die Sie oben vorgeschlagen haben, Prost! –