IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Composants graphiques Android Discussion :

RecyclerView, Version antérieur à 5.0


Sujet :

Composants graphiques Android

  1. #1
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut RecyclerView, Version antérieur à 5.0
    Bonsoir les amis

    J'essaie d'utiliser le composant RecyclerView dans un projet (de test) ayant pour version minimum antérieure à l'API 21. Mais depuis que j'ai commencé, j'avoue ne pas avancer parce que dès lors que j'ajoute ce composant dans mon fichier layout, Android studio me balance au visage le message suivant (dans la partie preview):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
     Rendering Problems The following classes could not be instantiated:
    -*android.support.v7.widget.RecyclerView (Open Class, Show Exception, Clear Cache)
     Tip: Use View.isInEditMode() in your custom views to skip code or show sample data when shown in the IDE  Exception Details
     
    java.lang.UnsupportedOperationException: Unsupported Service: accessibility
    	at com.android.layoutlib.bridge.android.BridgeContext.getSystemService(BridgeContext.java:458)
    	at android.support.v7.widget.RecyclerView.<init>(RecyclerView.java:290)
    	at android.support.v7.widget.RecyclerView.<init>(RecyclerView.java:266)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:408)
    	at org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:413)
    	at org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:105)
    	at com.android.tools.idea.rendering.LayoutlibCallback.loadView(LayoutlibCallback.java:177)
    	at android.view.BridgeInflater.loadCustomView(BridgeInflater.java:206)
    	at android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:131)
    	at android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:756)
    	at android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:64)
    	at android.view.LayoutInflater.rInflate(LayoutInflater.java:728)
    	at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
    	at android.view.LayoutInflater.inflate(LayoutInflater.java:373)
    	at com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate(RenderSessionImpl.java:391)
    	at com.android.layoutlib.bridge.Bridge.createSession(Bridge.java:337)
    	at com.android.ide.common.rendering.LayoutLibrary.createSession(LayoutLibrary.java:350)
    	at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:497)
    	at com.android.tools.idea.rendering.RenderTask$2.compute(RenderTask.java:485)
    	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:894)
    	at com.android.tools.idea.rendering.RenderTask.createRenderSession(RenderTask.java:485)
    	at com.android.tools.idea.rendering.RenderTask.render(RenderTask.java:590)
    	at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager.doRender(AndroidLayoutPreviewToolWindowManager.java:644)
    	at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager.access$1700(AndroidLayoutPreviewToolWindowManager.java:79)
    	at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager$7$1.run(AndroidLayoutPreviewToolWindowManager.java:586)
    	at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:152)
    	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:452)
    	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:402)
    	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:137)
    	at org.jetbrains.android.uipreview.AndroidLayoutPreviewToolWindowManager$7.run(AndroidLayoutPreviewToolWindowManager.java:581)
    	at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:320)
    	at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:310)
    	at com.intellij.util.ui.update.MergingUpdateQueue$2.run(MergingUpdateQueue.java:254)
    	at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:269)
    	at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:227)
    	at com.intellij.util.ui.update.MergingUpdateQueue.run(MergingUpdateQueue.java:217)
    	at com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
    	at com.intellij.util.Alarm$Request$1.run(Alarm.java:351)
    	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    	at java.lang.Thread.run(Thread.java:745)
    De là, deux questions me passent par la tête

    - La première, est-il possible d'utiliser ce composant dans les versions antérieures à LolliPop?
    - La seconde, comment l'utiliser si c'est possible dans les anciennes versions?

    Pourriez vous m'aider à passer cette étape avec vos éclaircissements svp?

    Mon fichier activity_main.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
        android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
     
        <TextView
            android:id="@+id/label"
            android:text="@string/hello_world"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
     
        <android.support.v7.widget.RecyclerView
            android:id="@+id/feedRecyclerView"
            xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_below="@id/label"/>
    </RelativeLayout>
    Et mon fichier gradle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    apply plugin: 'com.android.application'
     
    android {
        compileSdkVersion 22
        buildToolsVersion "23.0.0 rc3"
     
        defaultConfig {
            applicationId "com.example.chrislonembg.ahhhhhlollipop"
            minSdkVersion 10
            targetSdkVersion 22
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
     
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:22.2.1'
        compile 'com.android.support:recyclerview-v7:21.0.0'
    }
    Merci d'avance
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    C'est au runtime ou sur la preview du designer ?

    Dans tous les cas commence par mettre à jour le recyclerview :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    compile 'com.android.support:recyclerview-v7:22.2.1'
    Il y'avais un bug à ce sujet qui semble corrigé : https://code.google.com/p/android/is...etail?id=72117
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Bonsoir grunk, merci de ta réponse.
    Citation Envoyé par grunk Voir le message
    C'est au runtime ou sur la preview du designer ?
    Au niveau de la preview. Quand je m'entête et j'exécute, je tombe sur un NullPointerException.

    J'aimerais bien utiliser ce composant à cause de ses multiples nouvelles fonctionnalités mais je gèle jusque là. De l'aide svp.

    Christian,
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

Discussions similaires

  1. élimination du message "version antérieure"
    Par potili2 dans le forum Général VBA
    Réponses: 2
    Dernier message: 12/02/2007, 14h20
  2. Réponses: 3
    Dernier message: 23/01/2007, 13h34
  3. Compatibilité pg_dump avec une version antérieure.
    Par Empty_body dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 22/01/2007, 17h15
  4. Réinstallez version antérieur à IE7 ? :(
    Par WatzaKamikaze dans le forum Outils
    Réponses: 5
    Dernier message: 27/11/2006, 11h36
  5. Réponses: 2
    Dernier message: 02/11/2005, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo