我试图实现片段到活动的沟通。片段活动通信通过传递上下文对象onAttach()
通过android developer doc通过活动对象传递给onAttach生命周期并设置Fragment-Activity通信。
这个documentation要求传递Context对象而不是Activity。在onAttach的生命周期方法中,我用Context对象替换了所有Activity对象。但是在调用Fragment接口的方法时抛出NullPointerException异常。
@Override
public void onAttach(Context context) {
super.onAttach(context);
try {
colourChangerInterface = (ColourChangerInterface) context;
}
catch (Exception exp){
System.out.println("error!");
}
}
任何人都可以给新的方式使用一个小例子吗? 感谢
编辑:
找到this链接,详细讨论是否有同样的问题。 这个问题是因为onAttach()中断了API;它在传递Context对象时根本不会被调用。
从上述链接中找到的一个简单而快速的解决方案是将代码从onAttach移动到onCreate。
您是否尝试过使用Android的工作室APP-威泽德创建一个新的主/详细活动?应该包含你需要的每件事情。 – k3b
不,我扩展AppCompatActivity。让我探索主/细节活动.. –