Ich möchte alle Ressourcen-Zeichnungsobjekte in einer Liste anzeigen, sodass der Benutzer eine auswählen kann. Gibt es eine Möglichkeit, alle R.drawable-Elemente zu durchlaufen, so dass ich sie nicht hart in meinem Programm codieren muss?So zeigen Sie die Liste der Ressourcen-Zeichnungsobjekte an
Antwort
Mit der Methode "getFields" für die Zeichenklasse können Sie die gesamte Liste der Zeichnungsobjekte durchlaufen.
Field[] drawables = android.R.drawable.class.getFields();
for (Field f : drawables) {
try {
System.out.println("R.drawable." + f.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
Referenz: http://www.darshancomputing.com/android/1.5-drawables.html
Wenn Sie in Ihr generiertes R.drawable-Objekt schauen, sehen Sie, dass die IDs zusammenhängend sind, in meinem Fall (und wahrscheinlich auch bei Ihnen), beginnend bei 0x7f020000. Da sie scheinbar nach Alpha sortiert sind, könnten Sie wahrscheinlich Dummy-Bilder AAAAAAA.png und ZZZZZZ.png hinzufügen und zwischen den beiden IDs iterieren.
Ich kann Ihre Gründe für den Versuch nicht unterstützen, aber ich denke, das würde funktionieren.
Sie haben recht. Siehe meine Antwort hier: http://StackOverflow.com/A/19131585/1287856 Es funktioniert auch, um in den Raw/Ordner sowie den Xml/Ordner zu iterieren. –
- 1. So zeigen Sie die Summe der Spalten an Grid.Mvc Liste
- 2. So zeigen Sie die Liste der Aktualisierungsdateien in p4v an
- 3. So zeigen Sie die Paketlizenzdatei an?
- 4. So zeigen Sie die Fehlermeldung an
- 5. So zeigen Sie Credits an
- 6. So zeigen Sie Elemente im Listenfeld an
- 7. So zeigen Sie eine Liste mit ViewBag an
- 8. So zeigen Sie Listenelemente in Listview an?
- 9. So zeigen Sie Listenergebnisse an - searchView
- 10. So zeigen Sie die Liste der Daten in HTML-Formular an
- 11. Android Google Drive SDK - So zeigen Sie die Liste der Dateien im ausgewählten Ordner an
- 12. So zeigen Sie die Änderungen von OneDrive-Kindern an
- 13. So zeigen Sie Daten an, die in Android
- 14. So zeigen Sie Tabellendaten als Benutzerbewertungen an
- 15. So zeigen Sie formatierte XML an
- 16. So zeigen Sie Sonderzeichen in HTML an
- 17. So zeigen Sie Benachrichtigungen in IOS an
- 18. So zeigen Sie Daten in jtree an
- 19. So zeigen Sie WooCommerce an Kundenauftragskommentare
- 20. Knockout-Validierung - So zeigen Sie Fehlermeldungen an
- 21. So zeigen Sie Warnmeldungen in Django an
- 22. So zeigen Sie Zellen gemeinsam an
- 23. So zeigen Sie Snort-Protokolldateien an
- 24. So zeigen Sie die Bildlaufleiste immer an UICollectionView
- 25. So zeigen Sie die freigegebene Runner-Warteschlange an
- 26. So zeigen Sie die QuickContact-Karte vom Widget an
- 27. So zeigen Sie die linke Löschschaltfläche an UITableViewCell
- 28. So zeigen Sie die Druckerauswahl in NativeScript unter iOS an
- 29. So zeigen Sie die ausgeblendete Symbolleiste von Eclipse an
- 30. So zeigen Sie die Einstellungen in einer Ansicht an
Verwendung von 'android.R' wird nur die nativen Zeichen im Android SDK geben. Verwenden Sie 'com.example.appname.R' – Anonsage
, um die Zeichen Ihrer App zu erhalten. Warum fangen Sie eine generische Ausnahme ab? –
Ich bin mir nicht sicher - es ist schon eine Weile her, seit ich diese Antwort geschrieben habe. Es muss einen Grund gegeben haben .. – Seidr