如何从外部更改适配器的元素?

时间:2012-04-19 02:45:01

标签: android gallery

我有一个带有custom adapter图库。我正在显示图像以及一些文本和按钮。

我想在单击相应按钮时更改与图像关联的文本

如果我将按钮处理程序放在适配器中,它就不会捕获调用。

我发现我应该将处理程序移动到活动中。

但问题是我再也无法访问适配器了。任何解决方案?

public class MyAdapter extends BaseAdapter { ...


MyGallery myGallery = (MyGallery) findViewById(R.id.mygallery);
myGallery.setAdapter(new MyAdapter(this, ...));

2 个答案:

答案 0 :(得分:1)

您应该在适配器的getView函数中设置OnClickListener。当您为视图充气时,您可以在视图上调用findViewById以获取对Button的引用。然后,您可以在Button对象本身上设置OnClickListener。

答案 1 :(得分:1)

移动

MyGallery myGallery = (MyGallery) findViewById(R.id.mygallery);
myGallery.setAdapter(new MyAdapter(this, ...));

进入Activity

哦,是的,并成员引用Adapter例如MyAdapter myAdapter = new MyAdapter(....