2009-04-10 15 views
5

Mam plik XML przechowujący szorty w moich zasobach. Muszę przypisać tę tablicę, ale interfejs API systemu Android zapewnia tylko sposób na uzyskanie tablicy int (getResources.getIntArray()). Skończyło się na tym, że dostałem tablicę intów i później przekształciłem ją w szorty, ale to nie jest idealne.Jak skutecznie uzyskać krótką tablicę z zasobów na Androida?

Czy istnieje sposób na zdobycie szortów z zasobów Androida? Jeśli nie, czy istnieje bardziej wydajny/czysty sposób konwersji tablicy int w krótką tablicę? Mój kod obecnie wygląda tak:

int indicesInt[] = context.getResources().getIntArray(R.array.indices); 
short indices[] = new short[indicesInt.length]; 
for (int i = 0; i < indicesInt.length; i++) { 
    indices[i] = (short)indicesInt[i]; 
} 

Odpowiedz

2

Nie ma sposobu, aby bezpośrednio pobrać szorty AFAIK. Warto byłoby sprawdzić, czy można po prostu użyć int[] zamiast swojego short[]. Jeśli używasz biblioteki lub czegoś i nie możesz zmienić wymagania, Twój przykład jest najlepszym sposobem na zrobienie tego. Uważaj na ewentualne przepełnienie.