2013-05-25 17 views
5

Mam imageView w moim układzie, który służy jako tło, które nie jest skalowane. Ale muszę mieć obraz w prawym rogu ekranu. Mam teraz obraz w lewym górnym rogu ekranu. To jest mój xml dla ImageView:Wyrównanie ImageView w prawym górnym rogu ekranu

<ImageView 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:layout_alignParentRight="true" 
android:src="@drawable/achtergrond" 
android:scaleType="fitCenter" /> 

Próbowałem też umieścić go w linearlayout który ma grawitację = „top | right”, ale nie usuwa spacje wokół obrazu, ponieważ jest z match_parent rozmiary. Muszę też zachować skalę obrazu, więc nie mogę zrobić fill_parent.

Mam nadzieję, że ktoś może mi w tym pomóc!

+0

Nie powinieneś ustawić szerokości i wysokości jako 'wrap_content'? Może RelativeLayout jest tym, czego szukasz, aby dopasować ImageView do prawego górnego rogu. – kabuto178

+0

opublikować kluczowe części (atrybuty) układu nadrzędnego – stinepike

Odpowiedz

0

z linearlayout dopasować ImageView z obrazem używać

android:scaleType="fitXY" 
+0

Gdybym to zrobił, obraz uzyskałby inną skalę, więc nie mogę z niego korzystać. – Marc

+0

można dostosować za pomocą wypełnienia – stinepike

9

Poniższy układ umieści swój obraz (lub jakikolwiek inny widok) w prawym górnym rogu ekranu. Sprawdź komentarze poniżej bloku kodu, aby uzyskać więcej szczegółów.

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" /> 

</RelativeLayout> 

Ważnymi częściami są owijania RelativeLayout oraz zestaw do prawda na samym widoku layout_alignParentRight i layout_alignParentTop.

Nie obejmie to Twojego pełnego widoku, ponieważ to wszystko wrap_content. Możesz use different size resources per screen type lub pracować z różnymi layout_width i layout_height, a następnie użyć właściwości scaleType, jak chcesz (prawdopodobnie fitXY, aby skalować obraz, aby dopasować widok).

Nie należy używać urządzenia LinearLayout, jeśli nie jest to konieczne. Documentation on RelativeLayoutcan be found here.

20

Może dodać

android:adjustViewBounds="true" 

do swojego ImageView? Miałem podobny problem.

0

Chciałbym zaznaczyć, że odpowiedź hcpl jest właściwa, chociaż nie byłem w stanie tego osiągnąć, ponieważ ustawiłem względną wagę RelativeLayout na Center, więc centralizowałem każdy widok dziecka do centrum. Jeśli więc ty, który przyszedłeś tutaj, mając ten sam problem, zwróć uwagę na widok rodzica.

Powiązane problemy