从与关联 Activity 的 ListView 连接的适配器调用 Activity 中可用的方法(此 Activity 有 ListView 或回收器 View )的正确方法或最佳实践是什么。我已经多次看到并使用过这种编码方式来从适配器调用 Activity 方法
((MyActivity) context).abcMethod();
1)这是正确的方法吗? 2)这不是违反了失去耦合吗? 3)我应该为这个小工作提供一个回调接口(interface)吗?
我读到的内容类应该是松耦合的,接口(interface)是完成这项任务的关键。请为我提供这方面更好的知识。
最佳答案
在Adapter的构造函数中获取MyActivity的实例,并用于调用方法
//在 Activity 中
MyAdapter my=new MyAdapter(MyActivity.this);
//在适配器中
public MyAdapter extends BaseAdapter{
MyActivity myActivity;
public MyAdapter(MyActivity myActivity){
this.myActivity=myActivity;
}
//do your stuffs and call method by myActivity;
}
谢谢
关于java - 通过其连接的适配器调用 Activity 的方法对应用程序的面向对象设计有何影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34553746/