【发布时间】:2015-10-05 13:18:36
【问题描述】:
我正在尝试实现片段到活动的通信。
通过android developer doc,其中一个Activity对象被传递给onAttach生命周期并设置Fragment-Activity通信。
documentation 要求传递 Context 对象而不是 Activity。我将生命周期方法onAttach中的所有Activity对象替换为Context对象。但它在从 Fragment 调用接口的方法时抛出 NullPointerException。
@Override
public void onAttach(Context context) {
super.onAttach(context);
try {
colourChangerInterface = (ColourChangerInterface) context;
}
catch (Exception exp){
System.out.println("error!");
}
}
任何人都可以举一个新方式的用法的小例子吗? 谢谢
编辑:
找到this 链接,在该链接中对同一问题进行了详细讨论。 问题是由于 API 'onAttach()' 损坏;传递 Context 对象时根本不会调用它。
从上面的链接中找到的一个简单快捷的解决方案是将代码从 onAttach 移动到 onCreate。
【问题讨论】:
-
您是否尝试过使用 android-studio app-wizzard 创建一个新的主/从活动?这应该包含您需要的所有东西。
-
不,我正在扩展 AppCompatActivity。让我探索一下主/细节活动..
标签: android android-fragments android-fragmentactivity