Próbuję umieścić elementy sterujące powiększeniem mapy w prawym dolnym rogu ekranu. Mogłem to zrobić za pomocą RelativeLayout, używając obu alignParentBottom="true"
i alignParentRight="true"
, ale w przypadku Framelayout nie znalazłem żadnych takich atrybutów. Jak wyrównać go do prawego dolnego rogu ekranu?
106
Natknąłem się również na tę sytuację i wymyśliłem, jak to zrobić za pomocą FrameLayout. Poniższy wynik jest generowany przez kod podany poniżej.
Zmień wartość marginesu, aby dostosować położenie tekstu na obrazie. Usunięcie marginesu może czasami spowodować, że tekst zniknie z widoku.
źródło
Można to osiągnąć za pomocą
RelativeLayout
źródło
wrap_content
wRelativeLayout
. Bo i tak RelativeLayout skaluje się na cały ekran.Ustawienie
android:layout_gravity="bottom|right"
działało na mnieźródło
Można to zrobić na dwa sposoby:
1) Korzystanie z układu ramek
2) Korzystanie z układu względnego
źródło
źródło
Jeśli chcesz spróbować z kodem java. Proszę bardzo -
źródło
możesz dodać niewidoczny TextView do FrameLayout.
źródło
Można to zrobić na wiele sposobów za pomocą widżetu ograniczeń na stronie activity.xml w Android Studio.
Dwie najpopularniejsze metody to:
źródło
Nie możesz tego zrobić z FrameLayout.
Ze specyfikacji:
http://developer.android.com/reference/android/widget/FrameLayout.html
„Układ FrameLayout jest przeznaczony do blokowania obszaru na ekranie w celu wyświetlenia pojedynczego elementu. Możesz dodać wiele elementów podrzędnych do układu FrameLayout, ale wszystkie elementy podrzędne są przypięte do lewej górnej części ekranu”.
Dlaczego nie skorzystać z RelativeLayout?
źródło