2015-03-12 19 views
5

Jestem nowy na Androida. Pracuję nad projektem, w którym otrzymam wartości sygnału radiowego (mogę uzyskać wartości z API). Mam plan piętra. Plan piętra ma kuchnię, hol, sypialnie. Jeśli kliknę sekcję Kuchnia, muszę umieścić w tej sekcji obraz pinowy z wartościami sygnału radiowego. Po kliknięciu Zapisz, muszę zablokować obraz (z wartościami) w tej konkretnej sekcji. Podobnie mogę umieścić wiele obrazów Pin na podstawie wymagań.Jak umieścić obraz znacznika na obrazie w systemie Android?

Podaj mi pokrewne linki lub przykładowe kody, aby to rozwinąć. Dołączyłem obrazek w celach informacyjnych. Każda pomoc będzie naprawdę doceniona.

enter image description here

+1

Po uzyskaniu wartości z API, w odniesieniu do poszczególnych danych określonych wartości logicznych z nim w „isPinned”, tak aby można było wiedzieć, że kiedy pokazać wyskoczyć. Aby wyświetlić pinezę w widoku, dobrym pomysłem będzie stworzenie takiego układu, że widok tekstowy i nakładka szpilki będą potrzebne do zarządzania wyświetlaniem i ukrywaniem pinezki. – Chitrang

Odpowiedz

3

Jednym ze sposobów, aby to zrobić byłoby użyć płótna.

@Override 
protected void onDraw(Canvas canvas) { 
    super.onDraw(canvas); 

    Bitmap map = BitmapFactory.decodeResource(getResources(), R.drawable.map); 
    canvas.drawBitmap(map, xPositionForMap, yPositionForMap, null); 

    Bitmap marker = BitmapFactory.decodeResource(getResources(), R.drawable.marker); 
    canvas.drawBitmap(marker, xPositionFor1stMarker, yPositionFor1stMarker, null); 
    canvas.drawBitmap(marker, xPositionFor2ndMarker, yPositionFor2ndMarker, null); 
} 

Rzeczy narysowane później w onDraw pojawiają się na rysunkach wcześniejszych. Prawdopodobnie BitmapFactory.decodeResource powinien znajdować się w mata create/init init, więc nie są wywoływane za każdym razem, gdy wywoływany jest onDraw. Aby uzyskać więcej informacji, patrz http://developer.android.com/training/custom-views/custom-drawing.html.

Za kliknięcie pinezek można było przechwycić kliknięcia układu zawierającego płótno i warunkowo dodać dodatkowe rysunki i tekst.

Alternatywnym sposobem jest użycie RelativeLayout i umieszczenie ImageView, który działałby podobnie.

+0

bro możesz wysłać przykładowy kod źródłowy aplikacji z github lub cokolwiek? – reegan29

+1

Oto projekt od Romain Guy, który demonstruje rodzaj struktury aplikacji, którą masz. To dość skomplikowane, ale możesz zacząć. Ten plik pokazuje widok z metodą onDraw: https://github.com/romainguy/road-trip/blob/master/application/src/main/java/org/curiouscreature/android/roadtrip/StateView.java – TTransmit

+0

dużo próbuję wtedy informuję was bro.god bless – reegan29

2

rzucić okiem na tej biblioteki, może to pomoże Ci ImageLayout

+0

Dziękuję za odpowiedź przyjaciela, Czy masz pomysł, aby zapisać układ? Proszę, pomóż mi zachować układ ze zdjęciami pinezkami. – reegan29

Powiązane problemy