2013-03-22 13 views
5

Mam pytanie, które jest związane z projektem GUI w systemie Android.
Jeśli spojrzysz na architekturę projektowania Androida, mamy strukturę tabelaryczną w widoku projektu. Możemy rysować przyciski w wierszach i kolumnach, możemy narysować widok obrazu i wiele więcej, ale wszystko, co zrobimy w macierzy. Jak w nim wspomniano w tym obrazie. enter image description hereNiestandardowy projekt GUI w Androidzie

Ale widziałem wiele ciekawych projektów GUI w systemie Android, który wygląda bardzo pięknie i nie wygląda jak tradycyjny widok projektu (w postaci matrycy).

Sprawdź następujące zdjęcie za pomocą przycisków w sposób zygzakowaty. Narysowałem na nim czerwony kwadrat. enter image description here

Nie jestem pewien, jak można go zaprojektować i jak wychwycić funkcję onclick dla różnych obrazów i przycisków. Mam nadzieję, że bardzo dobrze wytłumaczyłem moje pytanie, proszę mi powiedzieć, czy to nie jest jasne. Szukam zdrowej odpowiedzi i pomocy.

Odpowiedz

3

Nie zrobiłem tego, ale można utworzyć własny obiekt drawable dla tła i użyć obiektu rotate na obiekcie canvas, aby obrócić obraz. Here is a SO, która mówi o tym i Docs. Ktoś może mieć lepszy pomysł, ale myślę, że to powinno działać na to, co chcesz.

+1

Można również rozszerzyć istniejącą klasę, taką jak Button, przesłonić onDraw() i sprawić, by robiła, co chcesz! – Simon

+1

Możesz też stworzyć niestandardową podklasę ViewGroup, która obsłuży absolutnie wszystko dla ciebie i nazwie ją 'ZigZagLayout'! –

0

Uważam, że trzeba stworzyć niestandardową wersję, jak wyjaśniono w oficjalnej dokumentacji Androida. Szukam także niektórych tutoriali, które bardzo dobrze to wyjaśniają. tutaj jest link do oficjalnej dokumentacji link. spójrz na to także, definiując niestandardowy widok i manipulując nim z działania. To nie jest to, czego szukasz, ale po prostu mieć pojęcie, jak to działa, możesz rozszerzyć klasę Button i zastąpić metodę onDraw i narysować, co chcesz.

0

Chociaż sam tego nie zrobiłem, po prostu czytałem o tym, jak zrobić coś podobnego za pomocą map obrazów.

Spójrz na ten link:

http://blahti.wordpress.com/2012/06/26/images-with-clickable-areas/

Zasadniczo, co artykule opisano, jest o dwa obrazy, jeden z wyglądu przycisków i jeden z kolorem warstwy gdzie przycisków będzie być. Na przykład, gdyby były 3 przyciski, miałbyś 3 kształty w 3 różnych kolorach (na przykład czerwony, zielony, niebieski).

Obraz z kolorowymi kształtami nie byłby widoczny, ale po uruchomieniu onclick można znaleźć kolor klikniętego piksela. Ponieważ każdy dotykany obszar ma inny kolor, możesz wiedzieć, które miejsce na ekranie jest dotykane.

To brzmi interesująco. Daj artykułowi przeczytać. Mam nadzieję, że to pomoże.

Powiązane problemy