Chcę pokazać prostokątne pudełko w absolutnym środku w układzie o wysokości h/3 i szerokości 3w/5 (w: szerokość ekranu, h: wysokość ekranu). Proszę, pomóż mi znaleźć rozwiązanie, Z góry dziękuję.pokazuje prostokątne pudełko w absolutnym środku w układzie
5
A
Odpowiedz
3
można dostosować za pomocą układu liniowego przy użyciu wagi Wkleiłem przykładowy kod poniżej nadzieję, że to pomaga.
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@color/transparent"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="horizontal"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="5"
/>
<TextView
android:id="@+id/desiredbox"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="TextView"
android:layout_gravity="center"
android:background="@color/skyblueBackground"
android:layout_weight="1"
/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="5"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
/>
2
Utwórz niestandardowy widok, który rozszerza klasę View
i zastępuje metodę onDraw()
, aby utworzyć żądany prostokąt. możesz zapoznać się z: Android canvas draw rectangle, aby uzyskać ogólny pomysł.
Jeśli pytanie brzmi: Jak ustawić widok wewnątrz kontenera - dodać to w konstruktorze widoku macierzystego:
final ViewTreeObserver vto = this.getViewTreeObserver();
vto.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
// here, the dimensions of the parent are available
int containerHeight = instance.getHeight();
int containerWidth = instance.getWidth();
childView.setY(containerHeight/3);
childView.setX(containerWidth * 3/5);
instance.getViewTreeObserver().removeGlobalOnLayoutListener(this);
}
}
});
gdzie instance
jest nawiązaniem do widoku kontenera.
3
Tak. Jest to możliwe przy użyciu rodzica układu Względny układ i innego układu (twojego pola) w środku, które jest ustawione centralnie. a szerokość i wysokość twojego pudełka może być wymieniona w java, a nie w xml.
Powiązane problemy
- 1. Odd pudełko w chromie
- 2. Mnożniki prostokątne w CUDA
- 3. Pudełko dookoła tekstu w matplotlib
- 4. Pudełko środkowe z elementami w linii inline
- 5. Powielanie prostokątne/kratowe
- 6. Python Matplotlib prostokątne binning
- 7. Div poziomo w środku i w pionie w środku
- 8. Nieprzezroczyste pudełko z legendami
- 9. Instrukcja w środku konkatenacji?
- 10. Lista plików z absolutnym rekursywnego ścieżki w Linuksie
- 11. Ustawianie wysokości elementu w elastycznym układzie?
- 12. Przycisk równomiernie rozmieszczony w układzie
- 13. dodawanie układu w innym układzie
- 14. Procent wypełnienia Androida w układzie
- 15. Tworzenie poziomej linii przerywanej w układzie androidowym
- 16. Centrowanie płynu DIV z maksymalną szerokością i absolutnym pozycjonowaniem
- 17. Pokaż informacje w środku połączenia
- 18. Kątowa data w środku modalnego
- 19. Tworzenie linię kółko w środku
- 20. Jak wyciąć łańcuch w środku?
- 21. Punkt załączyć w środku wykresu
- 22. Three.js: Obrót w środku obiektu
- 23. Programowo rozmieszczaj prostokątne obiekty UI w abstrakcyjny sposób, bez przerw.
- 24. Rysunek oś w środku figue w Pythonie
- 25. Tekst w środku Java w prostokącie
- 26. Obcinanie regionu OpenGL 2D nie prostokątne
- 27. Nieskończoność symbol nie pokazuje w Matlab działki
- 28. forep php w środku, aby rozwiązać problemy,
- 29. Przewijane pudełko z listą pól wyboru w HTML
- 30. Jak mogę wyśrodkować dwa widoki tekstowe w układzie pionowym w układzie