Autore Topic: NoSuchMethodError: android.support.v4.view.ViewCompat.isAttachedToWindow  (Letto 342 volte)

Offline iClaude

  • Utente normale
  • ***
  • Post: 286
  • Respect: +19
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S8
  • Sistema operativo:
    Windows 10
Quando eseguo la mia app su dispositivi pre-Lollipop ottengo all'apertura (il logcat mi segnala quando eseguo setContentView) questo errore e l'app crasha:
NoSuchMethodError: android.support.v4.view.ViewCompat.isAttachedToWindow

Il layout utilizza tra le altre cose un DrawerLayout (android.support.v4.widget.DrawerLayout), un ViewPager (android.support.v4.view.ViewPager) e un FloatingActionButton (android.support.design.widget.FloatingActionButton).
Altre cose strane non ne vedo.

Su Lollipop invece l'app non crasha.
Qualcuno ha già avuto lo stesso problema?

Offline LonelyWolf

  • Utente junior
  • **
  • Post: 148
  • Respect: +12
    • Mostra profilo
    • Traversate dei laghi
  • Dispositivo Android:
    GT-I9505, ALE-L21
  • Sistema operativo:
    Windows 7 32/64
Re:NoSuchMethodError: android.support.v4.view.ViewCompat.isAttachedToWindow
« Risposta #1 il: 25 Novembre 2015, 09:33:34 CET »
0
Controlla la versione delle librerie/dipendenze
Se la mia risposta ti è utile, per favore un thanks!

Offline iClaude

  • Utente normale
  • ***
  • Post: 286
  • Respect: +19
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S8
  • Sistema operativo:
    Windows 10
Re:NoSuchMethodError: android.support.v4.view.ViewCompat.isAttachedToWindow
« Risposta #2 il: 25 Novembre 2015, 18:10:12 CET »
0
Controlla la versione delle librerie/dipendenze

Il file gradle è questo:
    compile ('com.android.support:cardview-v7:22.2.0') {
        exclude module: 'support-v4' }
    compile ('com.android.support:recyclerview-v7:22.2.0') {
        exclude module: 'support-v4' }
    compile ('com.android.support:design:22.2.0') {
        exclude module: 'support-v4' }
    compile ('com.android.support:support-v4:22.1.1')

Seguendo i consigli ricevuti da un utente su Stackoverflow ho cambiato l'ultima libreria mettendo la stessa versione 22.2.0 delle altre, ma adesso ho questo errore (su tutte le versioni di Android):

Error:(12, 1) error: cannot access DialogStyle
class file for android.support.v4.app.DialogFragment$DialogStyle not found


Post unito: 25 Novembre 2015, 18:18:22 CET
Ok, ho cambiato la versione della support v4 a 22.2.1 ed ora tutto funziona.
Pare ci fosse un bug nella versione 22.2.0.
« Ultima modifica: 25 Novembre 2015, 18:18:22 CET da iClaude, Reason: Merged DoublePost »