我有一个活动“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);
答案 0 :(得分:1)
在适配器类中,我们可以使用context.startActivity(intent)
启动一个活动我不知道我们可以从适配器访问“启动活动”...但现在它工作得很好!!非常感谢您的推荐...
答案 1 :(得分:0)
如果我理解正确的话;您应该更新传递给适配器的List,然后调用adapter.notifyDataSetChanged()。 (方法名称可能有点不同,我在我的手机上打字而无法查找)。
您更新的列表必须与提供适配器的列表相同,因此您必须将其引用作为您的类的属性。