2010-09-20 14 views
6

Chciałbym zaimplementować widget koła ustawień czasu, taki jak ten, który ma iPhone (http://developer.apple.com/library/ios/#documentation/userexperience/conceptual/mobilehig/art/ui_datetimepicker.jpg).Jak zaimplementować widżet na koło tak jak w iPhone'ie?

  1. Czy należy używać funkcji GlSurfaceView, czy tylko rozszerzać widok?
  2. Czy powinienem zrobić to jako widok złożony (składałoby się z kilku widoków) lub narysować wszystko na płótnie w onDraw?
  3. W przypadku, gdy nie będę rozszerzać GlSurfaceView, jak zrobić (płynne) animacje? Rozpocznij wątek i wywołaj postInvalidate()?

Odpowiedz

6
+0

wiem o tym, ale nie ma animacji i kiedy przenieść kółka palcem nie robi poruszaj się płynnie, ale "skacze". – fhucho

+0

Ach dobrze wiedzieć, patrzyłem na użycie tego dla projektu, ale jeszcze go nie przetestowałem. Będę szukać i publikować tutaj, jeśli znajdę coś lepszego. –

0

@mbaird odpowiedź dał wydaje się wspierać animacje AFAIK w 2,0 pośrednictwem ich demo automatach. czy jest to rodzaj animacji, której szukasz?

3

Wrzuciłem mój kod do animowanego widget koła tutaj:

http://code.google.com/p/smooth-wheel/

+0

Twój kod, to znaczy dobrze, ale w pliku main.xml powinieneś użyć com.sinkpoint.smoothwheel.WheelView, jeśli ma błąd. – pengwang

+0

masz rację, złapałeś to z ostatnim refaktorem. Kod został zaktualizowany. – sinkpoint