Autore Topic: Spinner settare la selezione...  (Letto 565 volte)

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Spinner settare la selezione...
« il: 13 Agosto 2013, 19:00:55 CEST »
0
ciao a tutti!!!

ho creato questo cod:

Codice (Java): [Seleziona]
import java.util.ArrayList;
import java.util.List;
 
import android.app.Activity;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
 
public class MainActivity extends Activity {
   
    private Spinner spinner;
    private TextView text;
   
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       
        spinner = (Spinner) findViewById(R.id.spinner);
        text = (TextView) findViewById(R.id.text);
        List<Integer> list = new ArrayList<Integer>();
        list.add(5);
        list.add(10);
        list.add(15);
        list.add(20);
        list.add(30);
        list.add(35);
        list.add(40);
        list.add(45);
        list.add(50);
       
       
       
        ArrayAdapter<Integer> dataAdapter = new ArrayAdapter<Integer>(this,
            android.R.layout.simple_spinner_item, list);
        dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner.setAdapter(dataAdapter);
        spinner.setPromptId(R.string.colorPrompt);
       
        setUpListeners();
    }
   
    private void setUpListeners() {
       
        spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
 
            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int pos, long id) {    
               
                int size = (Integer) parent.getItemAtPosition(pos);
               
                if(size == 5) {
                        text.setTextSize(5);
                } else if(size == 10) {
                        text.setTextSize(10);
                } else if(size == 15) {
                        text.setTextSize(15);
                } else if(size == 20) {
                        text.setTextSize(20);
                } else if(size == 20) {
                        text.setTextSize(25);
                } else if(size == 30) {
                        text.setTextSize(30);
                } else if(size == 35) {
                        text.setTextSize(35);
                } else if(size == 40) {
                        text.setTextSize(40);
                } else if(size == 45) {
                        text.setTextSize(45);
                } else if(size == 50) {
                        text.setTextSize(50);
                }
               
               
            }
 
            @Override
            public void onNothingSelected(AdapterView<?> arg0) {
                // TODO Auto-generated method stub
               
            }
        });
 
    }
}

ora al momento dell'apertura del mainActivity vorrei settare la textView direttamente al num: 30....

come faccio???

tutti possiamo programmare...basta volerlo!!!

Offline elfo83

  • Utente normale
  • ***
  • Post: 285
  • Respect: +23
    • Mostra profilo
  • Sistema operativo:
    Mac OS 10.8.2
Re:Spinner settare la selezione...
« Risposta #1 il: 14 Agosto 2013, 05:35:35 CEST »
0
Hai provato ad usare setSelection(int position) sull'adapter dello spinner o sullo spinner stesso?

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:Spinner settare la selezione...
« Risposta #2 il: 14 Agosto 2013, 09:07:15 CEST »
0
ciao elfo...si ho già provato...ma in questo modo non mi da il consenso a cambiare grandezza!!!!
tutti possiamo programmare...basta volerlo!!!

Offline elfo83

  • Utente normale
  • ***
  • Post: 285
  • Respect: +23
    • Mostra profilo
  • Sistema operativo:
    Mac OS 10.8.2
Re:Spinner settare la selezione...
« Risposta #3 il: 14 Agosto 2013, 18:40:55 CEST »
0
Dichiara un metodo del genere:
Codice (Java): [Seleziona]
private void changeSize(int i )
{
    if(size == 5) {
                        text.setTextSize(5);
                } else if(size == 10) {
                        text.setTextSize(10);
                } else if(size == 15) {
                        text.setTextSize(15);
                } else if(size == 20) {
                        text.setTextSize(20);
                } else if(size == 20) {
                        text.setTextSize(25);
                } else if(size == 30) {
                        text.setTextSize(30);
                } else if(size == 35) {
                        text.setTextSize(35);
                } else if(size == 40) {
                        text.setTextSize(40);
                } else if(size == 45) {
                        text.setTextSize(45);
                } else if(size == 50) {
                        text.setTextSize(50);
                }}

dove fondamentalmente fai la stessa cosa ma lo riutilizzi...quindi nell'adapter fai:

Codice (Java): [Seleziona]
private void setUpListeners() {
       
        spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
 
            @Override
            public void onItemSelected(AdapterView<?> parent, View view,
                    int pos, long id) {    
               
                int size = (Integer) parent.getItemAtPosition(pos);
               
               changeSize(size);
               
               
            }

quando apri la main activity, oltre a chiamare setSelection(), chiami anche changeSize con il valore che vuoi...non so se ho capito bene quello che vorresti fare comunque fammi sapere se risolvi.

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:Spinner settare la selezione...
« Risposta #4 il: 15 Agosto 2013, 10:21:20 CEST »
0
..ciao!!!

ho provato!!!

niente!!!

io vorrei che come valore iniziale sia "30"

come faccio???
tutti possiamo programmare...basta volerlo!!!

Offline elfo83

  • Utente normale
  • ***
  • Post: 285
  • Respect: +23
    • Mostra profilo
  • Sistema operativo:
    Mac OS 10.8.2
Re:Spinner settare la selezione...
« Risposta #5 il: 15 Agosto 2013, 17:33:07 CEST »
0
Vuoi far vedere il valore 30 sullo spinner o vuoi che la grandezza del textview sia 30? Non ho capito onestamente cosa vorresti fare
 

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:Spinner settare la selezione...
« Risposta #6 il: 15 Agosto 2013, 19:34:35 CEST »
0
voglio che la grandezza del textView sia 30...poi se lo voglio cambiare allora utilizzo lo spinner....
tutti possiamo programmare...basta volerlo!!!