单击按钮调用/修改当前活动

时间:2011-09-22 07:34:33

标签: android android-activity android-intent

我有一个活动“MyListActivity”。我有一个与它关联的适配器“MyGridAdapter”。它包含一个按钮网格(比如3)。每个按钮都有一个“OnClickListner()”。 点击第一个按钮,我将采取相同的行动。因此,我决定重新使用同一页面,而不是创建类似的另一个活动。含义:我需要调用“MyListActivity”,但需要修改一些参数 - 增加按钮数等... 我尝试在点击按钮时使用“invalidate()”。但它重新加载同一页面而没有任何变化。

如何从适配器中的函数调用相同的活动?

我的问题是:我创建了另一个“tempActivity”。在我尝试启动上一个活动的功能之一。 “MyGridAdapter”中的代码:

TempActivity temp=new TempActivity();
temp.setIntentObj(<parameters>);

在“TempActivity”中:

Intent intent=new Intent(this,ListActivity.class);        //this gives a "NullPointerException"
startActivity(intent);

2 个答案:

答案 0 :(得分:1)

在适配器类中,我们可以使用context.startActivity(intent)启动一个活动我不知道我们可以从适配器访问“启动活动”...但现在它工作得很好!!非常感谢您的推荐...

答案 1 :(得分:0)

如果我理解正确的话;您应该更新传递给适配器的List,然后调用adapter.notifyDataSetChanged()。 (方法名称可能有点不同,我在我的手机上打字而无法查找)。

您更新的列表必须与提供适配器的列表相同,因此您必须将其引用作为您的类的属性。