Powrót do listy treści

Struktura aplikacji i rysowanie

Plik manifest.xml

W manifest.xml opisujesz aplikację dla Connect IQ:

  • id – unikalny identyfikator (np. UUID).
  • name – nazwa wyświetlana użytkownikom (np. „Counter”).
  • version – wersja (major.minor.bugfix).
  • type – dla aplikacji licznika: watch-app.
  • products – lista urządzeń, na których działa aplikacja (np. fenix7, epix2).

Przykład fragmentu dla Watch App:

<iq:application version="1.0.0" type="watch-app">
  <iq:products>
    <iq:product id="fenix7"/>
  </iq:products>
</iq:application>

Bez poprawnego manifestu projekt nie zbuduje się ani nie zainstaluje na emulatorze.

View a rysowanie

  • View – obsługuje logikę widoku: odświeżanie ekranu (onUpdate) i – w kolejnej lekcji – wejście użytkownika (dotyk, przyciski).
  • W onUpdate(dc) wywołujesz metody dc.*, aby narysować wszystko, co ma być widoczne (w naszej aplikacji Counter – jedną liczbę na środku).

Rysowanie podstawowych elementów

Przydatne metody kontekstu rysowania (dc):

  • dc.drawLine(x1, y1, x2, y2) – linia.
  • dc.drawCircle(x, y, r) – okrąg.
  • dc.fillCircle(x, y, r) – wypełniony okrąg.
  • dc.drawRectangle(x, y, w, h) – prostokąt.
  • dc.drawText(x, y, font, "Tekst", flags) – tekst (w Counterze używasz jej do rysowania liczby).

Kolory ustawiasz przez dc.setColor(kolor_foreground, kolor_background). Współrzędne (0,0) to zwykle lewy górny róg ekranu; środek możesz obliczyć przez dc.getWidth()/2 i dc.getHeight()/2.

W aplikacji Counter na razie wystarczy dc.drawText z liczbą wyśrodkowaną. W następnej lekcji dodamy stan (zmienną z wartością licznika) i obsługę dotyku, żeby liczba rosła po każdym naciśnięciu.