2013-06-27 22 views
5

Chcę utworzyć aplikację baterii, która powinna informować użytkownika o odsetku baterii w formie obrazu. Teraz, dla procentowej baterii 0-100, potrzebuję 101 obrazów. Co chcę zrobić, to to, że można wstawić wszystkie te obrazy w tablicy i użyć ich odpowiednio. Na przykład, jeśli mój procent baterii wynosi 47%, obraz w tablicy na pozycji 47 powinien być zasobem. Oznacza to, załóżmy mam ImageView nazwie Battery, i mam tablicy o nazwie batteryimage (zawierający wszystkie 101 zdjęć) wtedy byłbym w stanie to zrobić,Jak uzyskać tablicę obrazów?

Battery.setBackgroundResource(R.drawable.batteryimage[p]) 

gdzie p będzie być aktualnym procentem baterii, który dostanę za pomocą kodu.

Mam nadzieję, że wszyscy zrozumieli, co chcę .. Thanx z góry ..

+3

100 zdjęć? naprawdę? Oczywiście to zależy od ciebie, ale lepiej byłoby pomyśleć o ponownym użyciu jednego obrazu, aby wyświetlić postęp. –

+0

Po prostu myślałem, że nakładki przezroczyste obrazy i po prostu użyć 0 - 100% granic jednego z obrazów, lepiej będzie pamięci o wiele więcej zalet niż wad – JRowan

Odpowiedz

14

zdefiniować tablicę id obrazu jak ten

int[] p = {R.drawable.image1, R.drawable.image2....} 

teraz do innego członka użytkowania stan tej tablicy jak

Battery.setBackgroundResource(p[0]) // or p[1] 

lub możesz użyć ENUM, aby uczynić go bardziej czytelnym ..

Ale .. Myślę, że powinieneś myśleć w inny sposób. zamiast używać 100 różnych obrazów utwórz niestandardowy pasek postępu, aby pokazać inny stan baterii.

Aby znać podstawy pasek postępu zobaczyć doc here i tworzyć niestandardowe Progressbar Można to sprawdzić so question

+1

Tak i warto zauważyć, że tak naprawdę nie można tego zrobić w inny sposób. Tylko ręcznie wpisując numery wszystkich zdjęć. –

Powiązane problemy