5
我想在我的android应用程序上编程创建按钮取决于我有多少项目在我的sqlite数据库。按钮在那里,但我的问题是在每个按钮上设置onClick
,因为我想在用户单击按钮时显示不同的内容。我使用这个代码现在:安卓创建按钮编程方式问题
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
他确实用“新”创建了一个新实例,所以这不成问题。 –