Mam tablicy ciąg zdefiniowany w arrays.xml odwołujący dwa ciągi w strings.xml:Zdobądź indeks elementu tablicy, na podstawie wartości
<string-array name="my_options">
<item>@string/my_string_one</item>
<item>@string/my_string_two</item>
</string-array>
<string name="my_string_one">Value 1</string>
<string name="my_string_two">Value 2</string>
Potrzebuję uzyskać pozycję elementu w tablica, w oparciu o wartość ciągu. Np. Łańcuch "Wartość 2" ma indeks 1. Mogę oczywiście zakodować tylko wartości pozycyjne (0, 1, itd.), Ale ulegnie ono zerwaniu, jeśli kolejność łańcuchów zostanie zmieniona. Chcę, żeby kod był niezależny od pozycji. Następujące prace:
int value = Arrays.asList((getResources().getStringArray(R.array.my_options))).indexOf(getString(R.string.my_string_one));
Czy istnieje bardziej kompaktowy i prostszy sposób na zrobienie tego?
Czy mógłbyś bardziej szczegółowo opisać, co robisz? Zastanawiam się nad możliwością użycia pliku XSL do przekształcenia pliku XML na żądany kod XML, abyś mógł dokonać hardcode, gdzie wartość będzie w nowym xml. Czy to ma sens? – Malachi