2016-02-10 1 views
0

Je suis en train de tester et de développer des applications sur un téléphone normal avec l'API Android niveau 21. Chaque vue fonctionne comme prévu et il n'y a aucun problème.Android - les vues sont invisibles quand elles ne le devraient pas (anciens appareils)

Cependant, lors du passage à un périphérique plus ancien avec API 16, certaines vues spécifiques des fragments ne sont tout simplement pas visibles. En quittant le fragment et en revenant au même fragment, il apparaîtra. Ainsi, par exemple, j'ouvre l'application et le fragment de début est créé. Les boutons image sont chargés et affichés, le texte qui doit apparaître sous eux reste caché. < - aucune idée pourquoi

Après avoir quitté ce fragment et y être retourné, le texte sous les boutons DO apparaît.

Cela se produit avec de nombreux autres fragments et je ne sais pas comment cela peut effectivement se produire, il est incompatible aussi bien ..

Ceci est la partie spécifique i parlé:

<LinearLayout 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:id="@+id/dashboard_shortcut_timetable" 
     android:paddingBottom="10dp" 
     android:layout_weight="0.3"> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content"> 
      <ImageButton 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:id="@+id/dashboard_shortcut_1" 
       android:src="@drawable/ic_shortcut" 
       android:background="@color/bg_white" 
       android:layout_centerHorizontal="true"/> 
     </RelativeLayout> 
     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:text="@string/dashboard_shortcut_timetable" 
      android:id="@+id/dashboard_shortcut_textview_1" 
      android:gravity="center|bottom"/> 

représentation de base de quoi il ressemble:

enter image description here

Je suis en train de tout le texte, substance Android de base ..Cela se produit avec d'autres vues, ainsi qu'avec QUELQUES éléments de menu, que je dois définir plus tard comme invisible/visible pour que cela fonctionne réellement.

Ma question est; pourquoi cela se produit-il, comment y remédier, dépend-il du niveau de l'appareil ou de l'API?

Répondre

0

Pour toute personne ayant le même problème, j'ai trouvé une solution à mon problème;

Apparemment, le multidex devait être activé, parce que j'avais utilisé de nombreuses méthodes/bibliothèques. Dommage que le logcat ne m'a pas donné aucune indication que cela se produisait et que cela causait le problème.

Qu'est-ce que ce multiplex? Read here

Comment activer le support multidex?

Dans build.gradle

android { 
    ... 
    defaultConfig { 
     ... 
     multiDexEnabled true 
    } 
} 

dependencies { 
    ... 
    compile 'com.android.support:multidex:1.0.1' 
    ... 
} 

Pour une compatibilité ascendante ajouter dans votre application principale:

@Override 
protected void attachBaseContext(Context base) 
{ 
    super.attachBaseContext(base); 
    MultiDex.install(this); 
}