[英]How to handle setOnClickListener for dynamically added button in android?
I have added button
view to a linearlayout
and now I want to setOnClickListener
on each added button
here's my code我已将
button
视图添加到linearlayout
,现在我想在每个添加的button
上设置setOnClickListener
这是我的代码
for(int i=0;i<15;i++){
Button btn = new Button(this);
btn.setText("button " + i);
myview.addView(btn);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
Toast.makeText(MainActivity.this, "you clicked button " + i, Toast.LENGTH_SHORT).show();
}
});
}
but getting result is only you clicked button 15
for all buttons, but i want to get only that position result which I have clicked on button Like:但得到的结果只有
you clicked button 15
,但我只想得到我点击按钮的 position 结果,比如:
for button1 ==> you clicked button 1
对于 button1 ==>
you clicked button 1
for button2 ==> you clicked button 2
对于 button2 ==>
you clicked button 2
How to do that??怎么做??
You can setTag
and getTag
to identify your Buttons.您可以通过
setTag
和getTag
来识别您的 Button。
Button btn = new Button(this);
btn.setText("button " + i);
btn.setTag("button" + i);
myview.addView(btn);
btn.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v){
Toast.makeText(MainActivity.this, "you clicked " + v.getTag(), Toast.LENGTH_SHORT).show();
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.