0

私は現在プロジェクトに取り組んでいます。画面に複数の TextView があります。アプリケーションを開いたときにランダムな x 座標と y 座標を持たせたい。

TextView.x = 30、TextView = 30 のようなものはありますか??

4

2 に答える 2

1

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);
于 2012-10-11T14:13:24.183 に答える
0
 TextView textView = (TextView) findViewById(R.id.display);
 textView.setLayoutParams(new AbsoluteLayout.LayoutParams(100,40, 100, 70));    

しかし、ここでは非推奨のAbsoluteLayoutしか使用できません!

于 2012-10-11T06:51:15.040 に答える