2013-08-16 3 views
0

Я хотел был бы сделать if else заявление для Spinner. Заявляю «Июнь», «июль», «Август», «Sept», «Октябрь», «NOV», «декабрь»Spinner if else statement

Когда я нажимаю на «Август» это даст мне MainActivity.java еще это даст мне август.ява. Прямо сейчас, Мой счетчик автоматически выбирает, Значение, когда я загружаю страницу, он автоматически выбирает «june» для меня. Есть ли способ, для меня отключить автоматический выбор?

Это мой код

String [] months = { 
       "June", 
       "July", 
       "August", 
       "Septemeber", 
       "November", 
       "December", 

часть моей date.java

//SpinnerView 
      s1 = (Spinner) findViewById(R.id.spinner1); 

     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, months); 
     s1.setAdapter(adapter); 
     s1.setOnItemSelectedListener(new OnItemSelectedListener() 
     { 
      public void onItemSelected(AdapterView<?> arg0,View arg1, int arg2, long arg3) { 
       int index = s1.getSelectedItemPosition(); 
       //Toast.makeText(getBaseContext(), "You have seleted item :" + months[index] , Toast.LENGTH_SHORT).show(); 
      } 
      public void onNothingSelected(AdapterView<?>arg0) {} 
      }); 


    if (s1.equals("August")) { 

     startActivity(new Intent(date.this,MainActivity.class)); 
    } 
    else{ 
     startActivity(new Intent(date.this,august 
       .class)); 

    } 
+0

почему вы не изменить String [] месяцев = { "Июнь", "июля", "Август", "Septemeber", «ноябрь », "декабрь"}, как String [] месяцев = { "Выберите" "Июнь", "Июль", "Август", "Septemeber", "Ноябрь", "Декабрь"}; ??? – LMK

+0

спасибо: (: я изменю его – randomize

ответ

1

Попробуйте это:

Добавить массив как "Select Month", "Июнь", "Июль", "Август", "сент", "Октябрь", "ноября", "разл"

и регистрация в

s1.setOnItemSelectedListener(new OnItemSelectedListener() 
     { 
      public void onItemSelected(AdapterView<?> arg0,View arg1, int arg2, long arg3) { 
       int index = s1.getSelectedItemPosition(); 
       if(index>0) 
       { 
          String Month = MonthArray[index]; 
        if (Month.equalIgnoreCase("August")) { 

         startActivity(new Intent(date.this,MainActivity.class)); 
        } 
        else{ 
         startActivity(new Intent(date.this,august 
           .class)); 

        } 
       } 
      } 
      public void onNothingSelected(AdapterView<?>arg0) {} 
     }); 

Надеюсь, что это поможет!

+0

он все еще не работает – randomize

+0

Попробуйте отредактировать код. Получить строку из массива месяцев, а затем проверить, соответствует ли ее значение «Август» или нет? –

+0

может посмотреть этот вопрос? http://stackoverflow.com/questions/18266824/spinner-with-list-view – randomize

0

Вы должны сохранить последнюю выбранную позицию элемента, на который Spinner «s либо в вашей БД или в SharedPreference. Когда ваше приложение загружается, проверьте, есть ли у вас позиция позиции в вашей БД или SharedPreference, а затем выберите элемент в Spinner на основе этой позиции.

1

Может быть, это поможет

import java.util.ArrayList; 
import android.os.Bundle; 
import android.app.Activity; 
import android.content.Intent; 
import android.view.Menu; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ArrayAdapter; 
import android.widget.Spinner; 

public class date extends Activity implements AdapterView.OnItemSelectedListener{ 



    ArrayList<String> months; 

    Spinner spinner; 

    ArrayAdapter<String> month_adapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 


     months = new ArrayList<String>(); 

     months.add("Select"); 
     months.add("June"); 
     months.add("July"); 
     months.add("August"); 
     months.add("Septemeber"); 
     months.add("November"); 
     months.add("December"); 

     spinner = (Spinner) findViewById(R.id.spinner); 
     spinner.setOnItemSelectedListener(this); 


     month_adapter=new ArrayAdapter<String>(getBaseContext(),android.R.layout.simple_spinner_item, months); 
     month_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner.setAdapter(month_adapter); 


    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    @Override 
    public void onItemSelected(AdapterView<?> arg0, View v, int position, 
      long arg3) { 
     // TODO Auto-generated method stub 


     if(!(spinner.getSelectedItem().toString().trim().equals("Select"))) 
     { 

      if (spinner.getSelectedItem().toString().trim().equals("August")) { 

       startActivity(new Intent(date.this,MainActivity.class)); 
      } 
      else{ 
       startActivity(new Intent(date.this,august 
          .class)); 

      } 

     } 

    } 

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

    } 

} 
+0

можно посмотреть на этот вопрос? http://stackoverflow.com/questions/18266824/spinner-with-list-view – randomize