/ / Встановити координати TextView - андроїд, android-textview

Встановіть Координати TextView - Android, android-textview

Зараз я працюю над проектом. У мене є кілька TextView на екрані. Я хочу, щоб вони мали випадкові координати x і y при відкритті програми.

чи є такі речі, як TextView.x = 30, і TextView = 30 ??

Відповіді:

1 для відповіді № 1

Розмістіть TextViews всередині a FrameLayout і встановити їх координати за допомогою android: layout_marginTop і android: layout_marginLeft. FrameLayout позиціонує свої позиції абсолютно зу верхньому лівому куті. Ви можете працювати з віссю z, змінюючи порядок елементів в макеті - перший елемент лежить нижче другого пункту і так далі ...

<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TextView
android:id="@+id/textview1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginLeft="10dp"/>
<TextView
android:id="@+id/textview2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:layout_marginLeft="60dp"/>
</FrameLayout>

Ви також можете встановити його динамічно з коду.

TextView textView = (TextView) findViewById(R.id.some_textview);
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layoutParams.topMargin = 10; // margin in pixels, not dps
layoutParams.leftMargin = 10; // margin in pixels, not dps
textView.setLayoutParams(layoutParams);

0 для відповіді № 2
 TextView textView = (TextView) findViewById(R.id.display);
textView.setLayoutParams(new AbsoluteLayout.LayoutParams(100,40, 100, 70));

Але тут ми можемо тільки використовувати AbsoluteLayout, яка застаріла!