フラグメントのいずれかがネットワーク リクエストに対して非同期応答を取得するたびにgetActivity() == null
、アクティビティに触れる必要があるか、その を使用する必要があるかを常に確認しContext
ます。
したがって、コード フローは次のようになります。
protected void onNetworkResponse(String response) {
if (getActivity() == null)
return;
getActivity().setProgressBarVisibility(false);
// Do rest of processing here
}
これは私たちにとって理にかなっています (何か間違ったことをしている場合はコメントしてください! :))。ただし、アクティビティを参照する場合は、onClickListener のように、ユーザー フィードバックで getActivity() == null もチェックします。Fragment のボタンがクリックされた場合、定義上、Activity にアタッチする必要があるため、これは慎重すぎるように思えます。私たちは慎重になりすぎていませんか?