Ho un ListFragment estesa, con questo onViewCreated()ListFragment "vista contenuto non ancora creato" su Ruota
public void onViewCreated(View v,Bundle savedInstanceState) {
super.onViewCreated(v, savedInstanceState);
mListener.onFragmentAction(0x000A);
if (mAdapter != null) {
getListView().setAdapter(mAdapter);
}
}
mListener.onFragmentAction chiama l'attività principale per fissare alcuni ascoltatori e inviare l'adattatore alla listView del frammento (logFrag
è di riferimento la propria attività a MyListFragment
)
public void populateLogFrag() {
//line 225 logFrag.getListView().setOnItemLongClickListener(myEventListener);
logFrag.getListView().setOnItemClickListener(myEventListener);
refreshLogAdapter(provideLogAdapter());
}
I carichi app bene, ma dopo il cambio di configurazione (rotazione del dispositivo) ottengo il seguente stack trace:
012.351.11-22 14:58:24.336: E/AndroidRuntime(22261): Caused by: java.lang.IllegalStateException: Content view not yet created
11-22 14:58:24.336: E/AndroidRuntime(22261): at android.support.v4.app.ListFragment.ensureList(ListFragment.java:328)
11-22 14:58:24.336: E/AndroidRuntime(22261): at android.support.v4.app.ListFragment.getListView(ListFragment.java:222)
11-22 14:58:24.336: E/AndroidRuntime(22261): at com.berrmal.timetracker.MainActivity.populateLogFrag(MainActivity.java:225)
11-22 14:58:24.336: E/AndroidRuntime(22261): at com.berrmal.timetracker.MainActivity.onFragmentAction(MainActivity.java:282)
11-22 14:58:24.336: E/AndroidRuntime(22261): at com.berrmal.timetracker.MyListFragment.onViewCreated(MyListFragment.java:23)
Non riesco a capire perché il ListView non è stato ancora creato, poiché lo chiamo dopo che il metodo onCreateView di Fragment è già stato restituito e durante onViewCreated(). Ho trovato una discussione o due con titoli correlati, ma le soluzioni non sembravano essere applicabili qui.
Grazie. Ho letto la documentazione, ma a quanto pare non ho capito. –
Sto ricevendo l'errore che chiama le cose dell'interfaccia utente all'interno di onActivityCreated: S – David
sei fantastico amico – ROR