Наложение изображения на угол обзора

#android

#Android

Вопрос:

Я пытаюсь нарисовать медаль, накладывающуюся на угол экрана оценки, показанный здесь

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

Как я могу заставить медаль наложить этот угол? Я бы предпочел сделать это в xml, если это возможно, но любые предложения приветствуются.

Ответ №1:

Вы также можете добиться этого, установив атрибуты android:clipChildren="false" и android:clipToPadding="false" в родительском представлении (и если это не сработает, установите его также во всех группах представлений-предков, в конечном итоге это сработает).

Ответ №2:

В XML-макете элемент, который определяется после, будет накладываться на элемент, который определяется до. Итак, вы могли бы изменить макет на что-то вроде этого:

 <LinearLayout>

<LinearLayout> <!--grey box --> </LinearLayout>

<ImageView src="medal" android:layout_marginLeft="-250dip"/>
<!-- change the amount of marginLeft to your desire -->

</LinearLayout>
  

Комментарии:

1. Я понятия не имел, что макеты были нарисованы в таком порядке! Это именно то, что я искал!

Ответ №3:

объедините их…

http://developer.android.com/resources/articles/layout-tricks-merge.html помогло бы

Комментарии:

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