2012-04-11 1 views
1

J'ai une liste d'éléments dans un fragment. Je veux désactiver le titre de la listeAffichage de la liste premier élément non cliquable

http://bugs.haploid.fr/file_download.php?file_id=856&type=bug

voici le code de la cellule de ma liste:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    style="@style/stations_listView_layout"> 
    <com.infrabel.railtime.views.RobotoMediumTextView 
     android:id="@+id/header_textview" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:paddingLeft="10dip" 
     android:paddingBottom="5dip" 
     android:layout_marginTop="29dip" 
     android:text="A" 
     style="@style/FragmentTitleSecondary"> 
    </com.infrabel.railtime.views.RobotoMediumTextView> 

    <View 
     android:id="@+id/header_bar" 
     android:layout_width="match_parent" 
     android:layout_height="2dip" 
     android:background="@color/fragment_title_color"> 
    </View> 

    <RelativeLayout 
     style="@style/stations_listView_inner_layout" 
     android:layout_width="fill_parent" 
     android:layout_height="60dip"> 

     <com.infrabel.railtime.views.RobotoMediumTextView 
      android:id="@+id/name" 
      android:layout_width="fill_parent" 
      android:layout_height="30dip" 
      android:layout_gravity="center_vertical" 
      android:textSize="@dimen/menu_list_item_primary_text_size" 
      android:textColor="@color/grey_normal"> 
     </com.infrabel.railtime.views.RobotoMediumTextView> 

     <com.infrabel.railtime.views.RobotoMediumTextView 
      android:id="@+id/details" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical" 
      android:layout_marginTop="25dip" 
      android:textSize="@dimen/fragment_title_text_size" 
      android:textColor="@color/grey_light"> 
     </com.infrabel.railtime.views.RobotoMediumTextView> 
    </RelativeLayout> 
</LinearLayout> 

j'ai essayé de mettre android: cliquable = false ou android: focusable = » faux "et ça ne marche pas.

+0

liste Voir premier élément non cliquable, mais je ne suis pas en mesure de voir une vue liste – vipin

+0

Alors vous essayez de faire le premier élément n l'affichage de la liste peut être cliqué et le reste cliquable? – Katana24

+0

Vipin: c'est le xml de la cellule (un élément de la liste) Katana: oui, je veux que le premier élément indiquant "Favoris" soit désactivé, que l'élément alphabétique "A" indiquant que la station commence par A à désactiver à –

Répondre

0

obtenu, je l'ai dans mon cell.xml Donc le texte sera dessiné à chaque fois que j'ajouterai une cellule

nous devons déclarer dans le fichier XML principal, que de changer le texte de notre adaptateur:

String firstLetter = station.getTitle().substring(0, 1); 
if (position == _alphaIndexer.get(firstLetter)) { 
    TextView header = (TextView) activity.findViewById(R.id.header_textview); 
    header.setText(firstLetter); 
} 
1

Une façon de rendre certains élément ListView pas cliquable est:

list.setOnItemClickListener(new OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 
     if(position == 0) { 
        // FIRST ITEM - DO NOTHING 
     } else { 
        // DO SOMETHING IF YOU WISH... 
     } 

    } 
}); 

une autre façon serait de modifier votre adaptateur personnalisé:

list.setAdapter(new ArrayAdapter<String>(this, R.layout.item, 
     listItems) { 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     final TextView v = (TextView) super.getView(position, 
       convertView, parent); 
     if(position == 0) { 
       v.setClickable(false); 
       // havent tested this thou... 
     } 
    } 

}); 
+0

J'ai essayé ceci: if (position == 0) { v.setClickable (false); et ça ne marche pas !! –

+0

avez-vous également essayé la première approche? – hendrix

Questions connexes