私は現在プロジェクトに取り組んでいます。画面に複数の TextView があります。アプリケーションを開いたときにランダムな x 座標と y 座標を持たせたい。
TextView.x = 30、TextView = 30 のようなものはありますか??
TextViewsをFrameLayout内に配置し、android :layout_marginTopおよびandroid: layout_marginLeftを使用して座標を設定します。FrameLayoutは、アイテムを左上隅から完全に配置します。レイアウト内のアイテムの順序を変更することで、z軸を操作できます。最初のアイテムは2番目のアイテムの下にあり、以下同様に続きます。
<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);
TextView textView = (TextView) findViewById(R.id.display);
textView.setLayoutParams(new AbsoluteLayout.LayoutParams(100,40, 100, 70));
しかし、ここでは非推奨のAbsoluteLayoutしか使用できません!