这是我在CheckActivity.java中的方法
public void check5(View view) {
lv = (ListView) findViewById(R.id.listView1);
modelItems[5] = new Model("Item", 1);
CustomAdapter adapter = new CustomAdapter(this, modelItems);
lv.setAdapter(adapter);
}
这是我如何在非活动类中调用方法
CheckActivity mActivity = new CheckActivity();
mActivity.check5();
但这是我得到的错误。
我在alt-enter和android studio中创建了CheckActivity.java中的新方法
public void check5()
{
lv = (ListView) findViewById(R.id.listView1);
modelItems[5] = new Model("Item", 1);
CustomAdapter adapter = new CustomAdapter(this, modelItems);
lv.setAdapter(adapter);
}
但是我的代码无法与(View view)
一起使用,如何解决?
编辑 - 有些人告诉我这是个坏主意。所以,如果这是不可能的,我如何将我的方法复制到非活动类?
答案 0 :(得分:0)
您需要在非活动类中传递Context
CheckActivity
Activity
,然后通过投射{{{}来调用来自非Activity
类的Activity
方法1}} Context
名称。
Activity
传递视图就像你调用了成员函数一样,因此你可以访问声明为((CheckActivity)context).check5(view);
的类CheckActvity
的变量。