不推荐使用的java方法onAttach(活动)在实现onAttach(上下文)时遇到问题
由于onAttach(Activity)
已被弃用,我在运行此代码时遇到问题:
public void onClick(View v) {
if (v == loginButton){
application.getAuth().getUser().setIsLogedIn(true);
callbacks.onLoggedIn();
}
}
public void onAttach(Activity activity){
super.onAttach(activity);
callbacks = (Callbacks) activity;
}
public interface Callbacks{
void onLoggedIn();
}
现在我得到java.lang.NullPointerException
,因为callbacks.onLoggedIn()
返回null
我也试过:
public void onAttach(Context context){
super.onAttach(context);
callbacks = (Callbacks) context.getApplicationContext();
}
# 1 楼答案
Here和here你可以找到关于你的问题的合理的讨论。这些帖子将有助于更好地理解这个问题
以下是一些让你快速前进的小贴士:
1)在您的情况下,您可以使用
context
和activity
:2)在附加片段后,始终可以使用
getActivity()
方法获取父活动