Android: девять исправлений сосредоточены на одном устройстве, но смещены немного вправо на другом

У меня есть изображение с девятью патчами, которое я помещаю на фон полноэкранного просмотра:

введите здесь описание изображениявведите здесь описание изображения

И выглядит так, как я хочу на экранах 800x480 и 1280x720: у него одинаковое прозрачное пространство слева и справа. А вот на FullHD экране свободное пространство слева в два раза больше, чем справа. Но у меня только по одному черному пикселю с обеих сторон, поэтому свободные места должны быть равными.

Затем я изменил свое изображение следующим образом:

оригиналмасштабированный

И теперь он выглядит по центру на экране FullHD, но сдвинут вправо на 800x480. Как я могу сделать так, чтобы он выглядел по центру на всех устройствах?

Теперь первое изображение выглядит так на устройстве FullHD (это нижняя часть вида):

введите здесь описание изображения

и второй:

введите здесь описание изображения

и они выглядят наоборот на устройстве 800x480.

Схема проста:

    ImageView ib = new ImageView(this);
    ib.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
    ib.setBackgroundResource(R.drawable.scroll_both_ver);
    setContentView(ib);

Upd: Решение состояло в том, чтобы предоставить копию в каждой из папок drawable-*.


person netimen    schedule 15.04.2013    source источник
comment
Ваши 9 патчей трудно различить при таком размере. Вы должны предоставить увеличенные версии с пиксельной сеткой.   -  person nicopico    schedule 15.04.2013
comment
Не могли бы вы дать нам скриншот обоих устройств, чтобы мы могли увидеть, что происходит? благодарю вас.   -  person Necro    schedule 15.04.2013
comment
И, пожалуйста, предоставьте полный макет XML, так как макет с девятью патчами иногда сложен.   -  person sulai    schedule 15.04.2013
comment
Возможный дубликат изображения 9 патчей, неправильно растянутого в плотности xhdpi   -  person Richard Le Mesurier    schedule 26.01.2016


Ответы (1)


Ваша верхняя центральная черная область с 9 патчами плохо отцентрована, у нее больше места справа, чем слева. Не уверен, как это может объяснить вашу проблему, но попробуйте настроить ее

person yoah    schedule 15.04.2013
comment
Я даже удалил эту область, не помогло - person netimen; 15.04.2013
comment
2 вещи, которые стоит попробовать: если вы используете фоновый цвет вместо изображения, заполняет ли он область. Поместите одно и то же изображение в drawable-xhdpi, drawable-dpi и drawable-mdpi, убедитесь, что это не проблема масштабирования изображения. - person yoah; 16.04.2013
comment
Мои изображения были в формате drawable-xhdpi, и когда я скопировал второй в drawable-hdpi, он стал нормально выглядеть на 800x480. Тем не менее, это не объясняет, почему первый выглядит выровненным по правому краю на FullHD, но сейчас это не имеет большого значения :) - person netimen; 16.04.2013