Как поместить View в определенный пиксель / позицию - PullRequest
1 голос
/ 17 ноября 2011

Мне нужно поместить представление (например, изображение) в пользовательскую точку интерфейса.Есть ли способ поместить вид в точный пиксель / виртуальный пиксель (dp) - зону экрана?

Мне нужно, чтобы вид отображался над другими видами.

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

РЕДАКТИРОВАТЬ:

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

Ответы [ 3 ]

2 голосов
/ 17 ноября 2011

Вы можете установить поля для макетов и отступы для видов внутри них, и вы можете указать там положение относительно краев или других видов.Также вы можете указать фиксированную позицию для макетов, заменив (match_parent / fill_parent или wrap_content) на фактический размер (обратите внимание, что вы должны указать все размеры в dp или dip). Например, у вас есть линейный макет, и вы хотите, чтобы изображение было 20 dpсправа от левого поля вы можете попробовать что-то вроде этого:

<LinearLayout
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android::layout_marginLeft="20dp">
   <!-- Nest your views here and if you want you can set padding for them

</LinearLayout>

Если вы хотите, чтобы ваши просмотры находились в определенной части экрана, например, в верхней части экрана / нижней части экрана и т. д.,Вы можете вкладывать их все в RelativeLayout.Это хороший способ сделать это, и это устранит любую путаницу.

Удачи, Аркде

1 голос
/ 17 ноября 2011

А как насчет FrameLayout , как в примере, который я разместил здесь ?

0 голосов
/ 17 ноября 2011

Вы можете использовать AbsoluteLayout , хотя это устарело.

...