Android:单击时如何从按钮获取文本? [复制]
Posted
技术标签:
【中文标题】Android:单击时如何从按钮获取文本? [复制]【英文标题】:Android:How to get the text from the Button when clicked? [duplicate] 【发布时间】:2011-05-05 14:33:38 【问题描述】:for(i=0;i
btnAlpha[i] = new Button(this);
btnAlpha[i].setBackgroundColor(Color.TRANSPARENT);
btnAlpha[i].setTextColor(Color.GREEN);
btnAlpha[i].setText(Character.toString ((char)(j+i)));
btnAlpha[i].setOnClickListener(new View.OnClickListener()
public void onClick(View v)
//Want to get the text from the current button.
btnAlpha[i].getText();
//But it gives error that "i" cannot be accessed.
);
我得到的错误是“不能引用在不同方法中定义的内部类中的非最终变量”。但我需要在正确的时间得到文本。怎么做?还有其他方法吗? 请帮忙!
【问题讨论】:
【参考方案1】:Button 是 View 的子类,因此 onClick 的参数 v 是被点击的 Button。试试
public void onClick(View v)
((Button) v).getText();
【讨论】:
非常感谢!这解决了问题。【参考方案2】:在 for 循环中创建一个新变量 final int x = i;
并在 onClick
方法中使用 x
代替 i
编辑:实际上我不确定这会正常工作。哎呀。 Kype P 的回答看起来不错。
【讨论】:
以上是关于Android:单击时如何从按钮获取文本? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
单击按钮时如何将文本视图从一件事切换到另一件事 - Android