CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: con ben Thanks ricevuti nelle ultime 24 ore
Utente della settimana: bluemask con ben 8 Thanks ricevuti negli ultimi sette giorni
Utente del mese: bluemask con ben 23 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 2 su 2
Discussione:

Cambiare colore agli elementi di una listView on focus e on click

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Jul 2010
    Messaggi
    1

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Question

    Cambiare colore agli elementi di una listView on focus e on click

    Salve ragazzi,
    ho una listView nella mia app (questo è il suo layout xml, list_layout.xml):

    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <ListView xmlns:android="http://schemas.android.com/apk/res/android" 
    	android:id="@+id/arrayList" 
    	android:layout_width="fill_parent" android:layout_height="fill_parent"			
    	android:textFilterEnabled="true"
    	android:scrollbars="vertical"
    	android:drawSelectorOnTop="true"></ListView>
    Ogni elemento della mia listView è composto da due textView (questo è il layout dell'elemento i-esimo della lista, custom_row.xml):

    codice:
    <?xml version="1.0" encoding="utf-8"?>
    <TableLayout android:layout_width="fill_parent"
    	xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/row_container"
    	android:padding="5px" android:layout_height="wrap_content"
    	android:background="@color/white" android:shrinkColumns="0">
    		<TableRow>
    		<TextView android:layout_height="wrap_content"
    			android:layout_width="wrap_content" android:layout_below="@+id/description"
    			android:id="@+id/description"
    			android:textColor="@color/black"			
    			android:scrollHorizontally="true"
    			android:singleLine="true"></TextView>		
    	</TableRow>
    	<TableRow>
    		<TextView android:layout_width="wrap_content"
    			android:layout_height="wrap_content" android:id="@+id/result"
    			android:textColor="@color/grey"
    			android:maxLines="1"
    			android:scrollHorizontally="true"></TextView>						
    	</TableRow>
    
    </TableLayout>

    Ho quindi creato una activity, per la visualizzazione della mia lista, settando come layout appunto quello definito dal file list_layout.xml e utilizzando un arrayAdapter per gestire il contenuto della mia lista (Matches.java):

    codice:
    public class Matches extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);        
            //set layout
                    
            setContentView(R.layout.list_layout);
    		// obtain reference to listview
    		ListView listView = (ListView) findViewById(R.id.arrayList);
    		//listView.setBackgroundResource(R.drawable.list_selector);
    		
    		ArrayAdapter<Match> arrayAdapter = new ArrayAdapter<Match>(
    				this, R.layout.custom_row, R.id.description, createItems()) {
    			
    			@Override
    			public View getView (int position, View convertView, ViewGroup parent){
    				Match item = getItem (position);
    				LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    				View rowView = inflater.inflate(R.layout.custom_row, null);
    				TextView description = (TextView)rowView.findViewById(R.id.description);
    				TextView result = (TextView)rowView.findViewById(R.id.result);
    				description.setText(item.description + "  Risultato: " + item.result );
    				result.setText(item.date + "  " + item.hour);
    				return rowView;
    			}
    		};
    		
    		listView.setAdapter(arrayAdapter);
    ...

    La mia domanda è: come posso fare in modo di modificare il colore di background (ed eventualmente anche il colore del testo) degli elementi della lista al click e al focus?
    Quello che accade è che, selezionando o cliccando un elemento della lista, gli viene dato un colore di background di default (arancio), impedendo la visualizzazione del testo ..
    Spero di essere stato chiaro, chiedetemi pure ogni altro chiarimento
    Grazie per l'aiuto

  2.  
  3. #2
    Androidiano


    Registrato dal
    Oct 2009
    Messaggi
    97

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    La prossima volta fai una ricerca sul forum prima di chiedere, se no c'è pericolo che ti becchi chi ti sgrida e non ti risponde alla domanda.

    Guarda qua:

    https://www.androidiani.com/forum/pr...nto-click.html

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy