Ho appena avuto un rapporto incidente da uno degli utenti con la seguente traccia di errore:rendere esiste che il nome della classe, è pubblico, e ha una costruzione vuota frammento pubblico con il nome della classe e il costruttore vuoto
Unable to instantiate fragment packageName.Wizard$WizardFirstPage: make sure class name exists, is public, and has an empty constructor that is public
Queste le dichiarazioni classi:
public class Wizard extends Other
public abstract class Other extends BaseActivity
public abstract class BaseActivity extends ActionBarActivity
Tutte le classi sono pubbliche, denominate e non hanno un costruttore definito dall'utente.
Per quanto riguarda il frammento WizardFirstPage
: (definito in Wizard
)
public class WizardFirstPage extends Fragment
Nessun costruttore definito dall'utente sia.
Cosa mi manca?
aggiungere la parola chiave statica. 'public static class WizardFirstPage estende Fragment', corregge tutti gli errori di compilazione e lo riavvia – Blackbelt
@Blackbelt, tutti i frammenti interni dovrebbero essere statici? (è un errore di runtime BTW) – SagiLow
sì, devono essere dichiarati come statici – Blackbelt