情况如下:我有一个动态生成一堆随机自定义图像按钮的活动,并将它们添加到我的 xml 中的 TableView 中的 TableRows 中。此活动还有一个我想在单击这些按钮中的一个/任何一个时调用的方法。按钮内部有变量;该方法获取这些变量并将它们设置为 TextView(在同一活动中),因此我认为所有按钮都可以使用这种方法。如果这些按钮是在 XML 中定义的,我只会使用 android:onClick="displayCell" 来指定方法,但它们不是。当我在活动中生成它们时,有没有办法为这些按钮设置 onClick 或者我必须使用
button.setOnClickListener(new OnClickListener(){....});
并经历了一些麻烦,正如我在这里的一些答案中看到的那样?我遇到的问题是我似乎无法从 onClick 内部调用我的方法,因为方法(按钮)的参数不是最终的(我在循环中制作了一堆“按钮”,所以我不'认为不可能):
button.setOnClickListener(new OnClickListener(){ public void onClick(View q){ button.getActivity().displayCell(button);//我想做这样的事情但是这显然行不通 } });