私は自分のAndroidアプリケーションでボタンをプログラムで作成しようとしていますが、これはsqliteデータベースのアイテム数によって異なります。ボタンはありますが、ユーザーのボタンをクリックしたときに別のコンテンツを表示したいので、すべてのボタンにonClick
を設定するのが私の問題です。私は今のところ、このコードを使用しています:Androidでボタンをプログラムで作成する
for(cursorCol.move(0); cursorCol.moveToNext(); cursorCol.isAfterLast()){
Id = Integer.parseInt(cursorCol.getString(cursorCol.getColumnIndex("id")));
Log.i("Id","Id : "+Id);
titleButton = cursorCol.getString(cursorCol.getColumnIndex("title"));
Log.i("titleButton","titleButton : " + titleButton);
elemOrder1 = Integer.parseInt(cursorCol.getString(cursorCol.getColumnIndex("elemOrder")));
Log.i("elemOrder1 ","elemOrder1 : " + elemOrder1);
btn = new Button(this);
btn.setText(" " + titleButton + " ");
btn.setId(Id);
btn.setTextColor(Color.parseColor("#000000"));
btn.setTextSize(12);
btn.setPadding(10, 10, 10, 10);
btn.setBackgroundResource(R.drawable.gray_button);
btnlayout.addView(btn,params);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
infoCard.removeAllViews();
for(int i=0;i<=cursorCol.getCount();i++){
Log.i("","titleButton : "+titleButton);
}
}
}
しかし、問題は、私はそれだけで最後titleButton
を見せてボタンをクリックしたときにということです。実際には私はtitleButton
を表示する必要はありません、私はちょうどテスト目的のためにそれをしました。任意のアイデアをどのように私はボタンごとに異なるonClick
メソッドを作成できますか?
これは正しい答えです!これは本当にありがとう!私はいつも同じボタンを使って作業していることに気付きませんでした。 –
問題ありません。私は喜んでお手伝いします。 – NotACleverMan
彼は "new"で新しいインスタンスを作成するので問題はありません。 –