私がやろうとしているのは、人々が自分の名前を入力する EditText を用意することです。「プレイヤーの追加」ボタンを押すと、入力した名前がリスト フォームの下に表示されます。そのため、最初は非表示の 8 つのテキストビューを作成しましたが、ユーザーが名前を入力して [プレーヤーの追加] ボタンを押すと、テキストが名前に変わり、表示されます。
だから私は名前のリストの TextView 配列を設定しました。これはすべてテキストビューです
TextView[] nameList = new TextView[]{name1, name2, name3, name4, name5, name6, name7, name8};
onClick セクションのコードの後半で、私は
for (int i = 0; i < 8; i++) {
String name = etName.getText().toString();
nameList[i].setText(name);
nameList[i].setVisibility(View.VISIBLE);
}
しかし、これでは「プレイヤー追加」ボタンを押すたびにアプリがクラッシュして NullPointerException が発生します。どうすればこれを解決できますか?
for ループがないとアプリがクラッシュしたため、問題は for ループにはありません。問題は、私が入れたかのように配列にあるようです
name1.setText(name);
name1.setVisibility(View.VISIBLE);
コードはうまくいきました。