java.lang.IllegalStateException: Aktivität zerstört wurde

Arbeiten mit Robolectric , ich bin sehr neu in android. Machte ich einen ersten test-Klasse mit Aktivität. Es arbeitete schön.
Jetzt will ich einen test machen für das fragment.

@RunWith(RobolectricTestRunner.class)
public class LoginFragmentTest {
    private LoginFragment fragment;

    @Before
    public void setup() {
        fragment = new LoginFragment();
        startFragment(fragment);
        assertThat(fragment, notNullValue());
        assertThat(fragment.getActivity(), notNullValue());
    }

    private void startFragment(LoginFragment fragment) {
        FragmentManager fragmentManager = new FragmentActivity().getSupportFragmentManager();
        FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
        fragmentTransaction.add(fragment, null);
        fragmentTransaction.commit();
    }

    @Test
    public void login() {
        EditText idEditText = (EditText)fragment.getActivity().findViewById(R.id.main_id);
        assertThat(idEditText, notNullValue());
    }
}

Dies ist mein Erster test Klasse für die Fragment-Klasse. Es wirft

"java.lang.IllegalStateException: Activity has been destroyed" in startFragment#fragmentTransaction.commit().

Weiß jemand, wie man dieses Problem beheben ?

Finden Sie ganze Quelle aus https://github.com/msbaek/frame-test

Vielen Dank im Voraus !!

hum, nicht zerstören Sie Ihre Aktivität vor Begehen ein fragment Transaktion ?

InformationsquelleAutor Myeonseok Baek | 2013-03-22

Schreibe einen Kommentar