Ho un problema con l'utilizzo di una classe che estende android.view.View, che è strano perché sto facendo la stessa cosa in due progetti diversi, e solo in uno di questi è questo un problema.android - nessun costruttore predefinito in vista
Entrambi i progetti hanno una classe che dice: public class ClassName extends View
.
Ma per uno di loro, questa linea è sottolineata rossa, e il messaggio dato è
"Non v'è alcun costruttore di default disponibili in 'android.view.View'"
I non so perché uno ha questo problema mentre l'altro no. Non sono le stesse classi, naturalmente, ma entrambe estendono la vista allo stesso modo. Ho pensato che sarebbe stato un problema comune, ma non sto trovando nulla a riguardo tramite la ricerca su Google, quindi ti sto chiedendo qui. Grazie per l'aiuto che puoi dare!
EDIT:
I commenti mi ha fatto prova di nuovo, e abbastanza sicuro, la classe con l'errore non avere un costruttore definito nella sua classe. Trovo interessante il fatto che, anche se sono andato e definito un costruttore, ha comunque dato lo stesso errore fino a quando ho aggiunto i parametri (contesto Context, AttributeSet attrs) e nel costruttore ho aggiunto una riga 'super (context, attrs)'. Li ho aggiunti perché erano presenti nel costruttore della classe lavoratrice. Quindi la versione operativa è
public DrawingActivity(Context context, AttributeSet attrs) {
super(context,attrs);
}
La mia nuova domanda riguarda esattamente cosa fa. Questo è stato preso dalla classe che non ha avuto l'errore, e quella versione è stata originariamente copiata da un tutorial e non ci ha mai pensato molto al momento.
Guardare in altra classe. Troverete uno o più costruttori. –
hai un costruttore vuoto (un costruttore senza parametri) nella tua vista? – Blackbelt
pubblica la tua classe 'ClassName'. –