繁体   English   中英

从非活动类的活动中调用视图方法

[英]Call view method from an activity in non-activity class

这是我在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并在CheckActivity.java中创建android studio新方法

在此处输入图片说明

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)使用,我该如何解决?

编辑-有些人告诉我,这不是一个好主意。 因此,如果这不可能,我如何将我的方法复制到非活动类中?

您需要在非Activity类中传递CheckActivity Activity Context ,然后通过在Activity名称中强制转换Context来从Non Activity Class调用Activity方法。

((CheckActivity)context).check5(view);

就像调用成员函数一样传递视图,因此您可以访问声明为public CheckActvity类的变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM