Mam imageview
, które ma swoją wysokość i szerokość zestawu do fill_parent
z linearlayout
, który ma ten sam zestaw wartości. Więc przypuszczam, że to powinno dopasować moje obrazy do ekranu. Ale pasuje tylko do 80% (marginesy na górze i na dole w trybie poziomym).
Próbowałem następującego kodu bez powodzenia:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
imgView.setMinimumWidth(width);
imgView.setMinimumHeight(height);
imgView.setMaxWidth(width);
imgView.setMaxHeight(height);
Jakieś inne pomysły?
Odpowiedzi:
aby zmienić programowo użycie:
LUB
aby zmienić z xml użyj:
źródło
v.setAdjustViewBounds(true); v.setScaleType(ImageView.ScaleType.CENTER_CROP);
Podaj plik xml swojego układu
android:scaleType="fitXY"
PS: dotyczy to sytuacji, gdy obraz jest ustawiony z,
android:src="..."
a nieandroid:background="..."
jako tła są domyślnie ustawione na rozciąganie i dopasowanie do widoku.źródło
Użyj tego:
źródło
android:scaleType="fitXY"
tym, co zadziałało. DziękifitXY
jest to, że obraz jest rozciągany proporcjonalnie, aby pasował do ramki / widoku, w którym został ustawiony. UżywanieFIT_CENTER
dźwięków tak, jakby po prostu umieściło obraz w środku widoku, ale nie wypełnia widoku. Może się mylę, ale możesz poeksperymentować z jednym z nich, aby dowiedzieć się, co działajeśli używasz
android:scaleType="fitXY"
, musisz określićandroid:layout_width="75dp"
iandroid:layout_height="75dp"
jeśli użyjesz wrap_content, nie rozciągnie się do tego, czego potrzebujesz
źródło
Przyjęta odpowiedź jest idealna, jednak jeśli chcesz to zrobić z xml, możesz użyć
android:scaleType="fitXY"
źródło
Użyłem tego
android:scaleType="fitXY"
kodu w pliku Xml.źródło
po prostu zmień wysokość i szerokość ImageView na wrap_content i użyj
exampleImage.setScaleType (ImageView.ScaleType.FIT_XY);
w swoim kodzie.
źródło
Próbuję użyć:
Spowoduje to dopasowanie widoku obrazu do ekranu z prawidłowym współczynnikiem.
źródło
imageview.setFitToScreen(true)
setFitsSystemWindows()
??