Domanda

Sono attualmente in mio primo Spinner. Ma io kinda rimasto bloccato durante l'onItemSelectedListener, visto che non posso attuarla. Ho cercato prima di seguire il metodo di CommonWares libro, ma sarebbe lavorare -. Ma il mio metodo ora non funziona neanche

In un primo momento ho cercato di lasciare la mia attività implementare direttamente l'AdapterView - ma l'unica conseguenza fu che Eclipse mi ha detto che l'AdapterView interfaccia non è disponibile e mi ha chiesto di crearla ... però mi sono ora di nuovo lo stesso errore .

public class Lunchplace extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mensa);
    Context c = getApplicationContext();

    Spinner dateSelection = (Spinner)findViewById(R.id.date);

    //ArrayAdapter<String> aa = new ArrayAdapter<String>(this, android.R.)
    // get all the little tidbits of extra informations
    Bundle extras = getIntent().getExtras();

    String location = extras.getString("Mensa");
    // this function will download the Lunchfile - if necessary
    Data lunchData = new XMLData(c);

    // set the header text
    TextView mensaname = (TextView)findViewById(R.id.header);
    mensaname.setText(location);

    // get the spin view out of the xml
    Spinner spin = (Spinner)findViewById(R.id.date);

    // attach it to an adapter
    ArrayAdapter adapter = ArrayAdapter.createFromResource(
            this, R.array.days, android.R.layout.simple_spinner_item);
    // I should be able to put a custom layout of the spinner in there.. I bet
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spin.setAdapter(adapter);


    spin.setOnClickListener(
             new  AdapterView.OnItemSelectedListener() {           

           @Override
           public void onItemSelected(AdapterView<?> parent, 
             View view, int position, long id) {
           }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
            // TODO Auto-generated method stub

        }
             }
    );

    // set the current day of the week as the default selection
    spin.setSelection(Tools.getDayOfWeek());

    // get the tablelayout
    TableLayout tl = (TableLayout)findViewById(R.id.MenuTable);
    lunchData.getMenuforDay(c,tl,location);

    TextView counterTV = new TextView(c, null, R.style.MenuField);

    }
}

Qualcuno ha qualche idea su come posso risolvere il problema?

È stato utile?

Soluzione

Non c'è niente di speciale con l'attuazione del OnItemSelectedListener. Prova dovrebbe occupare in questo modo:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
            if ("YourDayToHandle".equals(spinner.getSelectedItem())) {
                // do smth useful here
            }
        }

    public void onNothingSelected(AdapterView<?> parent) {}
});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top