0

線形レイアウト内の textViews のテキストを取得する方法は? 基本的には、onSavedInstance の下にコードを配置します。これにより、画面の向きが変更された場合に、linearLayout で textViews をそのまま表示します。

以下のコードを修正しました

for (int i = 0; i < ll1.getChildCount(); i++) {


    }

なので

for (int i = 0; i < ll1.getChildCount(); i++) {
        TextView children = (TextView) ll1.getChildAt(i);
        String b1 = (String) children.getText().toString();
    }

上記のコードを試しましたが、成功するものは見つかりませんでした。

4

3 に答える 3

0

このようなものを使用できます。レイアウト xmlファイルで、次のようにタグを txtview として設定します。

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:tag="txtview"
    android:text="@string/hello_world" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:tag="txtview"
    android:text="TextView" />

<TextView
    android:id="@+id/textView3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:tag="txtview"
    android:text="TextView" />

<TextView
    android:id="@+id/textView4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:tag="txtview"
    android:text="TextView" />

アクティビティで次のコードを使用します

    LinearLayout ll1 = (LinearLayout) findViewById(your layout id);

    String[] bArray;
    StringBuilder stringBuilder = new StringBuilder();
    for (int i = 0; i < ll1.getChildCount(); i++) {
        if (ll1.getChildAt(i).getTag().equals("txtview")) {
            TextView children = (TextView) ll1.getChildAt(i);
            stringBuilder.append(children.getText().toString() + "!##!");
        }
    }
    bArray = stringBuilder.toString().split("!##!");
于 2013-08-29T05:20:32.977 に答える