Невозможно сделать дочерний вид шире, чем родительский в макете Android - PullRequest
7 голосов
/ 02 декабря 2011

Я перемещаю вид после завершения анимации (чтобы выдвинуть меню слева). Тем не менее, я, кажется, не могу достичь эффекта, который я ищу. Я хотел бы, чтобы представление простиралось вправо за границы родителя, например:

What I want

но на самом деле происходит следующее:

Actual Result

Представление сбрасывается, чтобы оставаться в пределах родительского элемента. Даже если я установлю абсолютное значение в пикселях (глядя на ширину дисплея или даже на случайное большое значение).

Причина, по которой мне нужно это сделать, подробно описана в этом вопросе о реальной позиции представления после завершения анимации: TranslateAnimated ImageView не активируется после анимации [Android]

есть мысли? Спасибо!

Ответы [ 2 ]

3 голосов
/ 30 декабря 2011

Итак, вот связанный вопрос .Объясняется, как переместить вид из экрана.

1 голос
/ 05 мая 2015

У меня была такая же проблема, и я нашел решение. Я надеюсь, что это может быть полезно. Вам нужно установить фиксированную ширину, если вы хотите добиться этого эффекта. Чтобы найти реальную ширину вида, вам нужно измерить ее. Итак, полное решение:

view.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
int height = view.getMeasuredHeight();
int width = view.getMeasuredWidth();
view.setLayoutParams(new LinearLayout.LayoutParams(width, height));

(Используйте LayoutParams типа, соответствующего типу родительского макета)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...