我希望此代码部分在每个按钮上设置一个onclick侦听器(我已经用另一种方法制作了这些按钮),并且在单击它们时将其“编号”或ID保存(到文件中)。我知道如何保存文本,但是当我尝试保存“ l”变量时,它将保存其最后一个值,而不是创建时的值。我想不出任何其他解决方案。
for(final int l[]={0}; l[0] < filea.length; l[0]++ )
{
Button button = (Button) findViewById(l[0]);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
//
//save method here
}
});
最佳答案
在循环体内声明最终变量:
for ( int ll = 0; ll < filea.length; ++ll )
{
final int l = ll; // Use this in the listener.
// Rest of loop body.
}