7

startActivityForResultのフラグメントと方向の変更に問題があります。方向変更後のフラグメント内のgetActivity()がnullです

私は1つのフラグメントからstartActivityForResult()を呼び出し、フラグメントが添付された2番目のアクティビティを開きます。この2番目のアクティビティで、向きを変更して最初のアクティビティに戻ると、onActivityResult(フラグメントメソッド)が呼び出されます。

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    getActivity(); //here's a problem because 
    //getActivity is null but only after orientation change on second activity 
} 

答えて

-1

すべての問題は、私ということでしたXMLでのフラグメントのアンドロイド:idを宣言しないでください。 Androidの必要なIDやTAGは、保存されたフラグメントを認識し、その中のすべての要素を再現します。みんな、断片のすべてのインスタンスがユニークなIDまたはタグを必要とすることを思い出してください!

+2

いくつかのコードスニペットを追加してください。 – Pawan

0

あなたはgetActivityを(呼び出す前に必要なスーパーを呼び出す必要があります)のようなので、::私はこのような何かを持っているので、しかし、問題は、あります

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    getActivity(); 
} 
+3

かわいいですが動作しません。私はgetActivityにNPEを持っています... – TommyNecessary

関連する問題