0

Androidゲームを作成していますが、TextViewを使用した動的テキストに問題があります。レイアウト内の基本として、相対レイアウト内に数行分の十分なスペースがあるTextViewがあります。

私がやりたいのは、TextView内に5行を追加することです。これにより、6行目を書き込もうとすると、自動的に1行目が上書きされるため、最大5行のテキストしか表示されません。

私が求めているものの例:

dynamic line 1
...
dynamic line 5

私のxmlコードの下を見つけてください:

<RelativeLayout android:id="@+id/battleconsole" 
    android:layout_width="fill_parent"
    android:layout_height="135dp"
    android:gravity="center_horizontal"
    android:layout_below="@+id/spacer1" >

    <TextView
            android:id="@+id/battle_details"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="Console with information" />
 </RelativeLayout>

これは、TextView内のテキストを更新するために使用しているコードです。

TextView update = (TextView)findViewById(R.id.battle_details);
update.setText("test console data going in here");

TextViewを使用してこれが可能かどうかはわかりませんが、そうでない場合は、この問題を解決できる他の方法はありますか?

前もって感謝します

4

1 に答える 1

3

5 行をコレクション (配列またはリスト) に保持します。TextView にテキストを設定するときは、「\n」でコレクション内の行を結合します。次に、コレクション内のアイテムを更新されたテキストに置き換えます。

Android には TextUtils クラスに join メソッドがありますが、私は Guava ライブラリの Joiner クラスを好みます。それをチェックしてください:Google Guava

于 2012-10-16T16:49:44.643 に答える