2014-09-15 3 views
-1

j'ai choisi de l'activité de tiroir de navigation par défaut à partir de mon IDE, j'ai mis les éléments de la liste, mais je veux changer à la couleur par défaut (blanc) à une coutume couleur noire par exemple. Il y a le code que j'ai essayécomment changer la couleur de la listeVoir le texte en android

//Set Black Color for the text 

    textView=(TextView) getText(android.R.id.text1); 
    textView.setTextColor(getResources().getColor(R.color.dark_grey)); 
    textView.setTypeface(Typeface.DEFAULT_BOLD); 
    textView.setTextSize((float) 20); 

    mDrawerListView.setAdapter(new ArrayAdapter<String>(
      getActionBar().getThemedContext(), 
      android.R.layout.simple_list_item_1, 
      android.R.id.text1, 
      new String[]{ 
        getString(R.string.title_section1), 
        getString(R.string.title_section2), 
        getString(R.string.title_section3), 
        getString(R.string.title_section4), 
        getString(R.string.title_section5), 
        getString(R.string.title_section6), 
      })); 
    mDrawerListView.setItemChecked(mCurrentSelectedPosition, true); 
    return mDrawerListView; 
+0

utilise un fichier XML personnalisé au lieu du fichier XML par défaut pour ListView. –

Répondre

2

Vous avez deux possibilités. La première est d'utiliser Android construit dans layouts (comme vous l'avez fait), et passer outre getView() dans l'adaptateur pour changer la couleur du texte, comme ceci:

mDrawerListView.setAdapter(new ArrayAdapter<String>(getActionBar().getThemedContext(), android.R.layout.simple_list_item_1, android.R.id.text1, 
      new String[] { 
       getString(R.string.title_section1), 
       getString(R.string.title_section2), 
       getString(R.string.title_section3), 
       getString(R.string.title_section4), 
       getString(R.string.title_section5), 
       getString(R.string.title_section6)}) { 

     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
      TextView textView = (TextView) super.getView(position, convertView, parent); 
      textView.setTextColor(getResources().getColor(R.color.whatever)); 
      return textView; 
     } 
    }); 

La deuxième option est de créer votre propre fichier xml de mise en page et définissez simplement l'attribut de couleur de texte dans la vue de texte de cette mise en page.

+0

l'emplacement de la fonction getView est faux je suppose! –

+0

Que voulez-vous dire par faux? C'est un code de travail, c'est une implémentation de classe anonyme. – nitzanj

+0

comment puis-je ajouter cette fonction en ce qui concerne mon code? –

0

Si vous ne avez pas besoin de changer de couleur par programme, essayez de changer la couleur du texte à partir du xml listview.

+0

J'ai essayé mais je ne travaille toujours pas! –

+0

Pourriez-vous montrer le code du fichier simple_list_item_1.xml? – Burak

Questions connexes