我在我的应用程序中显示一个在运行时创建的表。我想让它的所有行都可以点击。这里我使用了代码。
tableRow.addView(payeeNameText);
tableRow.addView(dueDateButton);
tableRow.setTag(1);
accountBillsTL.addView(tableRow);
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == (View)tableRow.getTag(1)){
System.out.println("Row Clicked");
}
}
但是当点击行时没有任何反应。 LogCat 没有打印值(value)。请帮忙。我怎样才能使行在运行时 View 中可点击。谢谢。
最佳答案
使您的表格行可点击并附加一个 onClick 监听器
tableRow.setClickable(true)
tableRow.setOnClickListener(new View.OnClickListener(){
public void onClick(View view){
System.out.println("Row Clicked with tag " + view.getTag());
}
})
注意:view.getTag() 没有任何参数!这只返回一个对象。您添加了一个整数作为此 View 的标记,因此您可以执行类似的操作
if (((int) tableRow.getTag()) == 1) {
bla bla
}
关于android - OnClicklistener 不适用于运行时 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5577351/