アイテムをスクロールビューに動的に追加するために、さまざまなチュートリアルに従おうと何時間も試みてきましたが、何も機能していないようです...
アイデアは、チェックボックスの横にある TextView に文字列を追加することです。これは別の xml ファイルで行われ、追加し続けるにつれてリストが大きくなるようにしたかっただけです。
今のところ、追加されている文字列は 1 つだけです (最後の文字列が前の文字列に置き換えられます)。それを変更しようとすると、アプリが動作しなくなります。現状のコードは次のとおりです。
TableLayout addPlayersTableLayout;
TableRow tableRow1;
ScrollView addPlayersScrollView;
String[] players = new String[]{ "Blah", "Whatever", "Test", "Nipah!"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPlayersTableLayout = (TableLayout)findViewById(R.id.TableLayout1);
tableRow1 =(TableRow)findViewById(R.id.tableRow1);
addPlayersScrollView = (ScrollView)findViewById(R.id.playersScrollView);
insertPlayerInScrollView();
}
アイテムを追加するはずの関数の実装は次のとおりです (add_player_row.xml は、アイテムと見なされるテキストビューとチェックボックスが作成されたファイルです)。
private void insertPlayerInScrollView() {
LayoutInflater inflator = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View newPlayerRow = inflator.inflate(R.layout.add_player_row, null);
TextView newPlayerTextView = (TextView) newPlayerRow.findViewById(R.id.addPlayerTextView);
CheckBox playerCheckBox = (CheckBox)findViewById(R.id.playerCheckBox);
newPlayerTextView.setText(players[1]);
addPlayersTableLayout.addView(newPlayerRow,0);
}
ほとんどのフォーラムやチュートリアルでは addPlayersScrollView を使用するように言われますが、そうするとアプリがクラッシュします。それで...何かアイデアはありますか?どうもありがとうございました!