を使用する 1 つの Android アプリケーションを開発しました。HorizontalScrollView
にHorizontalScrollView
は として 1 つの子がありLinearLayout
ます。
LinearLayout
ここで、実行時にボタンを動的に追加したいと考えています。
ボタンは正常に追加されましたが、ボタンのクリック イベントが Android で機能しないという問題があります。
ArrayList listClassItems = objCompany.getListClassItems();
Button[] btnCategory = new Button[listClassItems.size()];
for(int i=0;i<listClassItems.size();i++)
{
System.out.println("OTHER_CLASS LENGTH : " + listClassItems.size());
System.out.println("CLASS ID : " + listClassItems.get(i).getClassId());
System.out.println("CLASS NAME : " + listClassItems.get(i).getClassName());
btnCategory[i] = new Button(myContext);
btnCategory[i].setId(i);
btnCategory[i].setTag(listClassItems.get(i).getClassId());
btnCategory[i].setText(listClassItems.get(i).getClassName());
btnCategory[i].setClickable(true);
btnCategory[i].setPadding(10,10,10,10);
LayoutParams layParams = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
if(i!=0 || i!=listClassItems.size()-1)
{
layParams.leftMargin = 10;
layParams.rightMargin = 10;
}
tabRowBottom.addView(btnCategory,layParams);
btnCategory[i].setOnClickListener(null);
tabRowBottom.addView(btnCategory[i]);
btnCategory[i].setOnClickListener(new Button.OnClickListener()
{
public void onClick(View v)
{
Toast.makeText(myContext, "=== Button CLICKED ===",Toast.LENGTH_SHORT).show();
btnCategory.setBackgroundColor(Color.BLACK);
}
});
}